ECrashExitCodes

Defines special exit codes used to diagnose abnormal terminations.

Choose your operating system:

Windows

macOS

Linux

References

Module

Core

Header

/Engine/Source/Runtime/Core/Public/GenericPlatform/GenericPlatformCrashContext.h

Include

#include "GenericPlatform/GenericPlatformCrashContext.h"

Syntax

enum ECrashExitCodes
{
    MonitoredApplicationStillRunning            = 777001,
    MonitoredApplicationExitCodeNotAvailable    = 777002,
    CrashReporterCrashed                        = 777003,
    CrashHandlerCrashed                         = 777004,
    OutOfProcessReporterExitedUnexpectedly      = 777005,
    CrashDuringStaticInit                       = 777006,
    OutOfProcessReporterCheckFailed             = 777007,
    UnhandledEnsure                             = 777008,
}

Values

Name

Description

MonitoredApplicationStillRunning

Used by out-of-process monitor in analytics report, the application is still running, but out-of-process monitor was requested to exit before the application exit code could be read.

MonitoredApplicationExitCodeNotAvailable

Used by out-of-process monitor in analytics report, the application is not running anymore, but the out-of-process monitor could not read the Editor exit code (either is is not supported by the OS or is not available).

CrashReporterCrashed

Used by the application when the crash reporter crashed itself while reporting a crash.

CrashHandlerCrashed

Used by the application when the crash handler crashed itself (crash in the __except() clause for example).

OutOfProcessReporterExitedUnexpectedly

Used by the application to flag when it detects that its out-of-process application supposed to report the bugs died (ex if the Editor detects that CrashReportClientEditor is not running anymore as expected).

CrashDuringStaticInit

Application crashed during static initialization.

OutOfProcessReporterCheckFailed

Used as MonitorExceptCode in analytics to track how often the out-of-process CRC exits because of a failed check.

UnhandledEnsure

The exception code used for ensure, in case a kernel driver callback happens at in a dispatch level where SEH (on windows) is disabled.

Remarks

Defines special exit codes used to diagnose abnormal terminations. The code values are arbitrary, but easily recongnizable in decimal. They are meant to be used with the out-of-process monitoring/analytics in order to figure out unexpected cases.