Pyrogenesis  trunk
Typedefs | Functions
wdbg_sym.h File Reference
#include "lib/sysdep/os/win/win.h"
Include dependency graph for wdbg_sym.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef Status(* StackFrameCallback) (const _tagSTACKFRAME64 *frame, uintptr_t cbData)
 called for each stack frame found by wdbg_sym_WalkStack. More...
 

Functions

Status wdbg_sym_WalkStack (StackFrameCallback cb, uintptr_t cbData, CONTEXT &context, const wchar_t *lastFuncToSkip=0)
 Iterate over a call stack, invoking a callback for each frame encountered. More...
 
void wdbg_sym_WriteMinidump (EXCEPTION_POINTERS *ep)
 

Typedef Documentation

◆ StackFrameCallback

typedef Status(* StackFrameCallback) (const _tagSTACKFRAME64 *frame, uintptr_t cbData)

called for each stack frame found by wdbg_sym_WalkStack.

Parameters
framethe dbghelp stack frame (we can't just pass the instruction-pointer because dump_frame_cb needs the frame pointer to locate frame-relative variables)
cbDatathe user-specified value that was passed to wdbg_sym_WalkStack
Returns
Status (see RETURN_STATUS_FROM_CALLBACK).

Function Documentation

◆ wdbg_sym_WalkStack()

Status wdbg_sym_WalkStack ( StackFrameCallback  cb,
uintptr_t  cbData,
CONTEXT &  context,
const wchar_t *  lastFuncToSkip = 0 
)

Iterate over a call stack, invoking a callback for each frame encountered.

Parameters
cb
cbData
contextProcessor context from which to start (taken from an exception record or debug_CaptureContext).
lastFuncToSkip
Note
It is safe to use ENSURE/debug_warn/WARN_RETURN_STATUS_IF_ERR even during a stack trace (which is triggered by ENSURE et al. in app code) because nested stack traces are ignored and only the error is displayed.

◆ wdbg_sym_WriteMinidump()

void wdbg_sym_WriteMinidump ( EXCEPTION_POINTERS *  ep)