diff options
author | Juan Sebastian Hoyos Ayala <juan.hoyos@microsoft.com> | 2018-07-09 14:28:57 -0700 |
---|---|---|
committer | Juan Sebastian Hoyos Ayala <juan.hoyos@microsoft.com> | 2018-07-10 10:36:19 -0700 |
commit | 32741b9e97f901242394dfc682c228a5d810f454 (patch) | |
tree | 140cbd03e6077f46ce3f12459622e1ddbf9fcb3a /src/debug/ee/frameinfo.cpp | |
parent | 6de41e2f4ffd8971d767e2aadb195f8c51286479 (diff) | |
download | coreclr-32741b9e97f901242394dfc682c228a5d810f454.tar.gz coreclr-32741b9e97f901242394dfc682c228a5d810f454.tar.bz2 coreclr-32741b9e97f901242394dfc682c228a5d810f454.zip |
GS cookie check fix for debugger stackwalks port
This bug fix is a port from the equivalent fix in framework. The
debugger tried performing a stackwalk in the epilog due to the JIT
incorrectly reporting epilogue information. This caused an invalid
GS cookie to be checked and caused the debugger to crash. A flag was
added to allow debug stackwalks to skip the cookie check.
Diffstat (limited to 'src/debug/ee/frameinfo.cpp')
-rw-r--r-- | src/debug/ee/frameinfo.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/debug/ee/frameinfo.cpp b/src/debug/ee/frameinfo.cpp index 0387ca9217..f8f8932cd8 100644 --- a/src/debug/ee/frameinfo.cpp +++ b/src/debug/ee/frameinfo.cpp @@ -2141,7 +2141,9 @@ StackWalkAction DebuggerWalkStack(Thread *thread, result = g_pEEInterface->StackWalkFramesEx(thread, &data.regDisplay, DebuggerWalkStackProc, - &data, flags | HANDLESKIPPEDFRAMES | NOTIFY_ON_U2M_TRANSITIONS | ALLOW_ASYNC_STACK_WALK); + &data, + flags | HANDLESKIPPEDFRAMES | NOTIFY_ON_U2M_TRANSITIONS | + ALLOW_ASYNC_STACK_WALK | SKIP_GSCOOKIE_CHECK); } else { |