summaryrefslogtreecommitdiff
path: root/src/vm/proftoeeinterfaceimpl.cpp
diff options
context:
space:
mode:
authorKonstantin Baladurin <k.baladurin@samsung.com>2019-09-26 20:06:57 +0300
committerGleb Balykov <g.balykov@samsung.com>2020-03-25 15:29:41 +0300
commitb241dc76c28557e15aef1a78f9bae5bd67134c7e (patch)
treeaf593f6ab85ff166e598aaa1664b9203ab71667c /src/vm/proftoeeinterfaceimpl.cpp
parent23cdca9f2be22904d196f69f0d64a1278cb73b44 (diff)
downloadcoreclr-b241dc76c28557e15aef1a78f9bae5bd67134c7e.tar.gz
coreclr-b241dc76c28557e15aef1a78f9bae5bd67134c7e.tar.bz2
coreclr-b241dc76c28557e15aef1a78f9bae5bd67134c7e.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/vm/proftoeeinterfaceimpl.cpp')
-rw-r--r--src/vm/proftoeeinterfaceimpl.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vm/proftoeeinterfaceimpl.cpp b/src/vm/proftoeeinterfaceimpl.cpp
index 2a8a46c468..c20d660872 100644
--- a/src/vm/proftoeeinterfaceimpl.cpp
+++ b/src/vm/proftoeeinterfaceimpl.cpp
@@ -7837,7 +7837,7 @@ Loop:
CodeManState codeManState;
codeManState.dwIsSet = 0;
REGDISPLAY rd;
- ZeroMemory(&rd, sizeof(rd));
+ FillRegDisplay(&rd, &ctxCur);
rd.SetEbpLocation(&ctxCur.Ebp);
rd.SP = ctxCur.Esp;