UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UnixPlatformCrashContext.cpp File Reference

Classes

struct  UnixCrashReporterTracker::CrashReporterProcess
 

Namespaces

namespace  UnixCrashReporterTracker
 

Macros

#define HANDLE_CASE(a, b)   case a: ErrorString += TEXT(#a ": " b); break;
 
#define SERVER_MAX_CONCURRENT_REPORTS   1
 

Enumerations

enum class  UnixCrashReporterTracker::SlotStatus : uint32 {
  UnixCrashReporterTracker::Available , UnixCrashReporterTracker::Spawning , UnixCrashReporterTracker::Uploading , UnixCrashReporterTracker::Closing ,
  UnixCrashReporterTracker::Killing
}
 

Functions

FString DescribeSignal (int32 Signal, siginfo_t *Info, ucontext_t *Context)
 
void GracefulTerminationHandler (int32 Signal, siginfo_t *Info, void *Context)
 
void CreateExceptionInfoString (int32 Signal, siginfo_t *Info, ucontext_t *Context)
 
std::atomic< uint32UnixCrashReporterTracker::NumUploadingProcesses (0)
 
bool UnixCrashReporterTracker::Tick (float DeltaTime)
 
void UnixCrashReporterTracker::PreInit ()
 
bool UnixCrashReporterTracker::WaitForProcWithTimeout (FProcHandle Proc, const double TimeoutInSec, const double SleepIntervalInSec)
 
void UnixCrashReporterTracker::RemoveValidCrashReportTickerForChildProcess ()
 
void DefaultCrashHandler (const FUnixCrashContext &Context)
 
void PlatformCrashHandler (int32 Signal, siginfo_t *Info, void *Context)
 
void ThreadStackWalker (int32 Signal, siginfo_t *Info, void *Context)
 

Variables

CORE_API bool GIsGPUCrashed
 
volatile sig_atomic_t GEnteredSignalHandler = 0
 
CrashReporterProcess UnixCrashReporterTracker::Processes [4]
 
uint32 UnixCrashReporterTracker::MaxProcessSlots
 
void(* GCrashHandlerPointer )(const FGenericCrashContext &Context) = NULL
 
int32 CORE_API GMaxNumberFileMappingCache
 
thread_local const TCHARGCrashErrorMessage
 
thread_local voidGCrashErrorProgramCounter
 
thread_local ECrashContextType GCrashErrorType
 
uint64 GCrashHandlerStackSize
 
int32 GSignalToDefault
 

Macro Definition Documentation

◆ HANDLE_CASE

#define HANDLE_CASE (   a,
 
)    case a: ErrorString += TEXT(#a ": " b); break;

◆ SERVER_MAX_CONCURRENT_REPORTS

#define SERVER_MAX_CONCURRENT_REPORTS   1

Function Documentation

◆ CreateExceptionInfoString()

void CreateExceptionInfoString ( int32  Signal,
siginfo_t Info,
ucontext_t Context 
)

◆ DefaultCrashHandler()

void DefaultCrashHandler ( const FUnixCrashContext Context)

Good enough default crash reporter.

◆ DescribeSignal()

FString DescribeSignal ( int32  Signal,
siginfo_t Info,
ucontext_t Context 
)

◆ GracefulTerminationHandler()

void GracefulTerminationHandler ( int32  Signal,
siginfo_t Info,
void Context 
)

Handles graceful termination. Gives time to exit gracefully, but second signal will quit immediately.

◆ PlatformCrashHandler()

void PlatformCrashHandler ( int32  Signal,
siginfo_t Info,
void Context 
)

True system-specific crash handler that gets called first

◆ ThreadStackWalker()

void ThreadStackWalker ( int32  Signal,
siginfo_t Info,
void Context 
)

Variable Documentation

◆ GCrashErrorMessage

thread_local const TCHAR* GCrashErrorMessage
extern

Message for the assert triggered on this thread

◆ GCrashErrorProgramCounter

thread_local void* GCrashErrorProgramCounter
extern

◆ GCrashErrorType

thread_local ECrashContextType GCrashErrorType
extern

◆ GCrashHandlerPointer

void(* GCrashHandlerPointer) (const FGenericCrashContext &Context) ( const FGenericCrashContext Context) = NULL

Global pointer to crash handler

◆ GCrashHandlerStackSize

uint64 GCrashHandlerStackSize
extern

◆ GEnteredSignalHandler

volatile sig_atomic_t GEnteredSignalHandler = 0

◆ GIsGPUCrashed

CORE_API bool GIsGPUCrashed
extern

◆ GMaxNumberFileMappingCache

int32 CORE_API GMaxNumberFileMappingCache
extern

◆ GSignalToDefault

int32 GSignalToDefault
extern