Commit ce737601 authored by Alexandre Julliard's avatar Alexandre Julliard

wow64: Fixup Eip for breakpoint exceptions.

Matching the 32-bit setup_raise_exception().
parent 3e3af62b
......@@ -215,6 +215,9 @@ static void call_user_exception_dispatcher( EXCEPTION_RECORD32 *rec, void *ctx32
context = RtlLocateLegacyContext( context_ex, NULL );
*context = ctx;
context->ContextFlags = flags;
/* adjust Eip for breakpoints in software emulation (hardware exceptions already adjust Rip) */
if (rec->ExceptionCode == EXCEPTION_BREAKPOINT && (wow64info->CpuFlags & WOW64_CPUFLAGS_SOFTWARE))
context->Eip--;
stack->context_ptr = PtrToUlong( context );
if (src_ex)
......
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