ReactOS  0.4.14-dev-1112-g2b067d6
framehandler.c File Reference
#include <windef.h>
#include <winbase.h>
#include <ndk/rtltypes.h>
#include <wine/debug.h>
#include <wine/exception.h>
#include <internal/wine/msvcrt.h>
#include <internal/wine/cppexcept.h>
Include dependency graph for framehandler.c:

Go to the source code of this file.

Macros

#define WIN32_NO_STATUS
 
#define WINE_NO_TRACE_MSGS
 

Functions

DWORD CDECL CallCxxFrameHandler (PEXCEPTION_RECORD rec, EXCEPTION_REGISTRATION_RECORD *frame, PCONTEXT context, EXCEPTION_REGISTRATION_RECORD **dispatch, const cxx_function_descr *descr)
 
DWORD __stdcall CxxHandleV8Frame (_In_ PEXCEPTION_RECORD rec, _In_ EXCEPTION_REGISTRATION_RECORD *frame, _In_ PCONTEXT context, _In_ EXCEPTION_REGISTRATION_RECORD **dispatch, _In_ const cxx_function_descr *descr)
 

Macro Definition Documentation

◆ WIN32_NO_STATUS

#define WIN32_NO_STATUS

Definition at line 8 of file framehandler.c.

◆ WINE_NO_TRACE_MSGS

#define WINE_NO_TRACE_MSGS

Definition at line 13 of file framehandler.c.

Function Documentation

◆ CallCxxFrameHandler()

DWORD CDECL CallCxxFrameHandler ( PEXCEPTION_RECORD  rec,
EXCEPTION_REGISTRATION_RECORD frame,
PCONTEXT  context,
EXCEPTION_REGISTRATION_RECORD **  dispatch,
const cxx_function_descr descr 
)

Referenced by CxxHandleV8Frame().

◆ CxxHandleV8Frame()

Definition at line 25 of file framehandler.c.

31 {
32  cxx_function_descr stub_descr;
33 
34  if (descr->magic != CXX_FRAME_MAGIC_VC8)
35  return CallCxxFrameHandler(rec, frame, context, dispatch, descr);
36 
37  if ((descr->flags & FUNC_DESCR_SYNCHRONOUS) &&
38  (rec->ExceptionCode != CXX_EXCEPTION))
39  {
40  return ExceptionContinueSearch; /* handle only c++ exceptions */
41  }
42 
43  stub_descr = *descr;
44  stub_descr.magic = CXX_FRAME_MAGIC_VC7;
45  return CallCxxFrameHandler(rec, frame, context, dispatch, &stub_descr);
46 }
DWORD CDECL CallCxxFrameHandler(PEXCEPTION_RECORD rec, EXCEPTION_REGISTRATION_RECORD *frame, PCONTEXT context, EXCEPTION_REGISTRATION_RECORD **dispatch, const cxx_function_descr *descr)
Definition: http.c:7094
#define CXX_FRAME_MAGIC_VC8
Definition: cppexcept.h:28
#define CXX_EXCEPTION
Definition: cppexcept.h:29
#define FUNC_DESCR_SYNCHRONOUS
Definition: cppexcept.h:108
#define CXX_FRAME_MAGIC_VC7
Definition: cppexcept.h:27
const char * descr
Definition: boot.c:45
void dispatch(HANDLE hStopEvent)
Definition: dispatch.c:66