[PATCH] kernel32: make it possible to create a backtrace from a RaiseException exception in gdb

Alexandre Julliard julliard at winehq.org
Tue Sep 27 09:34:28 CDT 2011


Bernhard Loos <bernhardloos at googlemail.com> writes:

> @@ -60,6 +60,17 @@ static PTOP_LEVEL_EXCEPTION_FILTER top_filter;
>  typedef INT (WINAPI *MessageBoxA_funcptr)(HWND,LPCSTR,LPCSTR,UINT);
>  typedef INT (WINAPI *MessageBoxW_funcptr)(HWND,LPCWSTR,LPCWSTR,UINT);
>  
> +#ifdef __i386__
> +/* without this, it's impossible to get a backtrace from the raised
> + * exception in winedbg in gdb mode */
> +void RaiseException_helper(EXCEPTION_RECORD *r, void *f) DECLSPEC_HIDDEN;
> +__ASM_GLOBAL_FUNC(RaiseException_helper,
> +                    "mov 0x4(%esp),%eax\n\t"
> +                    "push %eax\n\t"
> +                    "mov 0xc(%esp),%eax\n\t"
> +                    "call *%eax\n\t"
> +                    "ret")
> +#endif

You shouldn't need anything like that.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list