[PATCH 04/11] ntdll: arm64: Pass a nonnull handler_data in when continuing after a collided unwind
Martin Storsjo
martin at martin.st
Thu May 28 03:14:40 CDT 2020
This matches what was done for RtlUnwindEx in
93ecc54ae560a3677dfa78ca0f5448d7aef0cbd9, applying the same change
in call_function_handlers (when called from raise_exception).
Signed-off-by: Martin Storsjo <martin at martin.st>
---
dlls/ntdll/signal_arm64.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/signal_arm64.c b/dlls/ntdll/signal_arm64.c
index 8ccf3da57e6..b364f08e9aa 100644
--- a/dlls/ntdll/signal_arm64.c
+++ b/dlls/ntdll/signal_arm64.c
@@ -859,7 +859,7 @@ static NTSTATUS call_function_handlers( EXCEPTION_RECORD *rec, CONTEXT *orig_con
dispatch.ContextRecord = &context;
RtlVirtualUnwind( UNW_FLAG_NHANDLER, dispatch.ImageBase,
dispatch.ControlPc, dispatch.FunctionEntry,
- &context, NULL, &frame, NULL );
+ &context, &dispatch.HandlerData, &frame, NULL );
goto unwind_done;
}
default:
@@ -889,7 +889,7 @@ static NTSTATUS call_function_handlers( EXCEPTION_RECORD *rec, CONTEXT *orig_con
dispatch.ContextRecord = &context;
RtlVirtualUnwind( UNW_FLAG_NHANDLER, dispatch.ImageBase,
dispatch.ControlPc, dispatch.FunctionEntry,
- &context, NULL, &frame, NULL );
+ &context, &dispatch.HandlerData, &frame, NULL );
teb_frame = teb_frame->Prev;
goto unwind_done;
}
--
2.17.1
More information about the wine-devel
mailing list