Module: wine Branch: master Commit: a7459d0c99677be0df238236e0c5d555fe8d9dc1 URL: https://source.winehq.org/git/wine.git/?a=commit;h=a7459d0c99677be0df238236e...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Sep 12 21:23:15 2019 +0200
ntdll: Handle trap exception in signal handler on ARM64.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntdll/signal_arm64.c | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-)
diff --git a/dlls/ntdll/signal_arm64.c b/dlls/ntdll/signal_arm64.c index a029960ba4..40ef517d22 100644 --- a/dlls/ntdll/signal_arm64.c +++ b/dlls/ntdll/signal_arm64.c @@ -540,17 +540,6 @@ done: set_cpu_context( context ); }
-/********************************************************************** - * raise_trap_exception - */ -static void WINAPI raise_trap_exception( EXCEPTION_RECORD *rec, CONTEXT *context ) -{ - NTSTATUS status; - if (rec->ExceptionCode == EXCEPTION_BREAKPOINT) context->Pc += 4; - status = NtRaiseException( rec, context, TRUE ); - raise_status( status, rec ); -} - /********************************************************************** * raise_generic_exception */ @@ -1110,9 +1099,10 @@ static void trap_handler( int signal, siginfo_t *info, void *ucontext ) case TRAP_BRKPT: default: stack->rec.ExceptionCode = EXCEPTION_BREAKPOINT; + stack->context.Pc += 4; break; } - setup_raise_exception( context, stack, raise_trap_exception ); + setup_raise_exception( context, stack, raise_generic_exception ); }
/**********************************************************************