Commit 0f3c31b1 authored by Piotr Caban's avatar Piotr Caban Committed by Alexandre Julliard

msvcrt: Try to convert C to C++ exception in __CxxFrameHandler.

parent 8cf8285a
...@@ -543,9 +543,19 @@ DWORD CDECL cxx_frame_handler( PEXCEPTION_RECORD rec, cxx_exception_frame* frame ...@@ -543,9 +543,19 @@ DWORD CDECL cxx_frame_handler( PEXCEPTION_RECORD rec, cxx_exception_frame* frame
} }
else else
{ {
thread_data_t *data = msvcrt_get_thread_data();
exc_type = NULL; exc_type = NULL;
TRACE("handling C exception code %x rec %p frame %p trylevel %d descr %p nested_frame %p\n", TRACE("handling C exception code %x rec %p frame %p trylevel %d descr %p nested_frame %p\n",
rec->ExceptionCode, rec, frame, frame->trylevel, descr, nested_frame ); rec->ExceptionCode, rec, frame, frame->trylevel, descr, nested_frame );
if (data->se_translator) {
EXCEPTION_POINTERS except_ptrs;
except_ptrs.ExceptionRecord = rec;
except_ptrs.ContextRecord = context;
data->se_translator(rec->ExceptionCode, &except_ptrs);
}
} }
call_catch_block( rec, frame, descr, frame->trylevel, exc_type ); call_catch_block( rec, frame, descr, frame->trylevel, exc_type );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment