Paul Gofman pgofman@codeweavers.com writes:
-void WINAPI call_user_exception_dispatcher( EXCEPTION_RECORD *rec, CONTEXT *context ) +void *get_KiUserExceptionDispatcher_address(void) {
- pKiUserExceptionDispatcher( rec, context );
- return pKiUserExceptionDispatcher;
}
+__ASM_GLOBAL_FUNC( call_user_exception_dispatcher,
"add $4,%esp\n\t"
"call " __ASM_NAME("get_KiUserExceptionDispatcher_address") "\n\t"
"jmp *%eax")
That's not very nice. I'd suggest to pass the dispatcher address to call_user_exception_dispatcher().