FGenericCrashContext

Contains a runtime crash's properties that are common for all platforms.

Windows
MacOS
Linux

Inheritance Hierarchy

FGenericCrashContext

FUnixCrashContext

Syntax

struct FGenericCrashContext

Remarks

Contains a runtime crash's properties that are common for all platforms. This may change in the future.

Variables

Name Description

Protected variable

TArray< FCrashS...

 

CallStack

Protected variable

const TCHAR ...

 

ErrorMessage

Protected variable

int

 

NumMinidumpFramesToIgnore

Protected variable

ECrashContextTy...

 

Type

Constructors

Name Description

Public function

FGenericCrashContext

(
    ECrashContextType InType,
    const TCHAR* ErrorMessage
)

Default constructor.

Destructors

Name Description

Public function Virtual

~FGenericCrashContext()

Functions

Name Description

Public function Const

void

 

AddCrashProperty

(
    const TCHAR* PropertyName,
    const TCHAR* PropertyValue
)

Writes a common property to the buffer.

Public function Const

void

 

AddCrashProperty

(
    const TCHAR* PropertyName,
    const Type& Value
)

Writes a common property to the buffer.

Public function Static

void

 

AddPlugin

(
    const FString& PluginDesc
)

Adds a plugin descriptor string to the enabled plugins list in the crash context

Public function Static

void

 

AppendEscapedXMLString

(
    FString& OutBuffer,
    const TCHAR* Text
)

Escapes and appends specified text to XML string

Public function

void

 

CapturePortableCallStack

(
    int32 NumStackFramesToIgnore,
    void* Context
)

Generate raw call stack for crash report (image base + offset)

Public function Static

const TCHAR ...

 

EngineModeExString()

Gets the "vanilla" status string.

Public function Const

const FStrin...

 

GetBuffer()

Public function Static

const TCHAR ...

 

GetCrashConfigFilePath()

Helper to get the crash report client config filepath saved by this instance and copied to each crash report folder.

Public function Static

const TCHAR ...

 

GetCrashConfigFolder()

Helper to get the crash report client config folder used by GetCrashConfigFilePath().

Public function Static

FString

 

GetCrashGameName()

Get the Game Name of the crash

Public function Static

const TCHAR ...

 

GetCrashTypeString

(
    ECrashContextType Type
)

Helper to get the standard string for the crash type based on crash event bool values.

Protected function Virtual Const

bool

 

GetPlatformAllThreadContextsString

(
    FString& OutStr
)

  • a stream of Thread XML elements containing info (e.g. callstack) specific to an active thread

Public function Const

ECrashContex...

 

GetType()

Public function Const

void

 

GetUniqueCrashName

(
    TCHAR* GUIDBuffer,
    int32 BufferSize
)

Public function Static

void

 

Initialize()

Initializes crash context related platform specific data that can be impossible to obtain after a crash.

Public function Const

const bool

 

IsFullCrashDump()

Public function Static

bool

 

IsInitalized()

Public function Static

void

 

PurgeOldCrashConfig()

Helper to clean out old files in the crash report client config folder.

Public function Static

void

 

ResetEngineData()

Clears the engine data dictionary

Public function Virtual Const

void

 

SerializeAsXML

(
    const TCHAR* Filename
)

Serializes crash's informations to the specified filename.

Public function Const

void

 

SerializeContentToBuffer()

Serializes all data to the buffer.

Public function Static

void

 

SetDeploymentName

(
    const FString& EpicApp
)

Set the current deployment name (ie. EpicApp)

Public function Static

void

 

SetEngineData

(
    const FString& Key,
    const FString& Value
)

Updates (or adds if not already present) arbitrary engine data to the crash context (will remove the key if passed an empty string)

Public function

void

 

SetNumMinidumpFramesToIgnore

(
    int32 InNumMinidumpFramesToIgnore
)

Sets the number of stack frames to ignore when symbolicating from a minidump

Public function Virtual

void

 

SetPortableCallStack

(
    const uint64* StackFrames,
    int32 NumStackFrames
)

Sets the portable callstack to a specified stack

Public function Static

FString

 

UnescapeXMLString

(
    const FString& Text
)

Unescapes a specified XML string, naive implementation.

Constants

Name

Description

bIsInitialized

Whether the Initialize() has been called

ConfigSectionName

CrashConfigExtension

CrashConfigFileNameA

CrashConfigFileNameW

CrashConfigPurgeDays

CrashContextExtension

CrashContextRuntimeXMLNameA

CrashContextRuntimeXMLNameW

CrashGUIDLength

CrashGUIDRootPrefix

CrashMemoryStats

We can't gather memory stats in crash handling function, so we gather them just before raising exception and use in crash reporting.

CrashTypeAssert

CrashTypeCrash

CrashTypeEnsure

CrashTypeGPU

EnabledPluginsTag

EngineDataTag

EngineModeExDirty

EngineModeExUnknown

EngineModeExVanilla

ExecutionGuid

A guid that identifies this particular execution. Allows multiple crash reports from the same run of the project to be tied together.

NewLineTag

PlatformPropertiesTag

RuntimePropertiesTag

StaticCrashContextIndex

Static counter records how many crash contexts have been constructed

UE4MinidumpName

References

Module

Core

Header

Runtime/Core/Public/GenericPlatform/GenericPlatformCrashContext.h

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback