Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Commit adb2188

Browse files
chunseokleejanvorli
authored andcommitted
active exception regression fix (#6117)
This patch fixes regression caused by 597e160 commit. Previous PAL_VirtualUnwind does not set CONTEXT_UNWOUND_TO_CALL properly. In this patch, the flag is added for non-signaled exception.
1 parent 39703ca commit adb2188

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

src/pal/src/exception/seh-unwind.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,10 +289,16 @@ BOOL PAL_VirtualUnwind(CONTEXT *context, KNONVOLATILE_CONTEXT_POINTERS *contextP
289289
if (unw_is_signal_frame(&cursor) > 0)
290290
{
291291
context->ContextFlags |= CONTEXT_EXCEPTION_ACTIVE;
292+
#if defined(_ARM_) || defined(_ARM64_)
293+
context->ContextFlags &= ~CONTEXT_UNWOUND_TO_CALL;
294+
#endif // _ARM_ || _ARM64_
292295
}
293296
else
294297
{
295298
context->ContextFlags &= ~CONTEXT_EXCEPTION_ACTIVE;
299+
#if defined(_ARM_) || defined(_ARM64_)
300+
context->ContextFlags |= CONTEXT_UNWOUND_TO_CALL;
301+
#endif // _ARM_ || _ARM64_
296302
}
297303

298304
// Update the passed in windows context to reflect the unwind

0 commit comments

Comments
 (0)