summaryrefslogtreecommitdiff
path: root/src/debug/ee/i386/x86walker.cpp
diff options
context:
space:
mode:
authorKonstantin Baladurin <k.baladurin@samsung.com>2019-09-26 20:06:57 +0300
committerМихаил Аксенов/Device Solutions Lab /SRR/Engineer/삼성전자 <m.aksenov@samsung.com>2019-10-04 19:42:39 +0300
commita52f00caa51bfadc03134f6de3491238bc1e7d61 (patch)
tree2a8cc2579f62ff956c349c385fe03d8d19564d7c /src/debug/ee/i386/x86walker.cpp
parent47e34c60ffb197064f2def6845b91fe0001b2846 (diff)
downloadcoreclr-a52f00caa51bfadc03134f6de3491238bc1e7d61.tar.gz
coreclr-a52f00caa51bfadc03134f6de3491238bc1e7d61.tar.bz2
coreclr-a52f00caa51bfadc03134f6de3491238bc1e7d61.zip
[Linux/x86] Use ebp from current context during unwinding (#26789)
pCurrentContextPointers in REGDISPLAY can contain NULLs so we need to use ebp value from pCurrentContext. This patch contains following changes: - GetRegdisplayFP returns ebp from pCurrentContext - GetRegdisplayFP is used instead of *GetEbpLocation() - Set##reg##Location also updates register value in pCurrentContext
Diffstat (limited to 'src/debug/ee/i386/x86walker.cpp')
-rw-r--r--src/debug/ee/i386/x86walker.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/debug/ee/i386/x86walker.cpp b/src/debug/ee/i386/x86walker.cpp
index 8b62797484..078bc7ca75 100644
--- a/src/debug/ee/i386/x86walker.cpp
+++ b/src/debug/ee/i386/x86walker.cpp
@@ -307,7 +307,7 @@ DWORD NativeWalker::GetRegisterValue(int registerNumber)
return m_registers->SP;
break;
case 5:
- return *m_registers->GetEbpLocation();
+ return GetRegdisplayFP(m_registers);
break;
case 6:
return *m_registers->GetEsiLocation();