We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent e23382c commit c6156f4Copy full SHA for c6156f4
src/coreclr/vm/threadsuspend.cpp
@@ -2577,7 +2577,13 @@ int RedirectedHandledJITCaseExceptionFilter(
2577
pFrame->Pop();
2578
2579
// Copy the saved context record into the EH context;
2580
- ReplaceExceptionContextRecord(pExcepPtrs->ContextRecord, pCtx);
+ // NB: cannot use ReplaceExceptionContextRecord here.
2581
+ // these contexts may contain extended registers and may have different format
2582
+ // for reasons such as alignment or context compaction
2583
+ //
2584
+ // REVIEW: CopyContext may fail. in theory. How should we handle that? FailFast?
2585
+ CONTEXT* pTarget = pExcepPtrs->ContextRecord;
2586
+ CopyContext(pTarget, pTarget->ContextFlags, pCtx);
2587
2588
DWORD espValue = pCtx->Esp;
2589
0 commit comments