mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-06 08:39:34 +00:00
dbghelp: Stop unwinding on potential 64bit frame for i386 cpu.
Transform potential error on 32 => 64 bit transition with end of stack (needed in new wow64 for dbghelp's stackwalk tests). Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
This commit is contained in:
parent
002057543d
commit
7de1284b59
|
@ -473,7 +473,14 @@ static BOOL i386_stack_walk(struct cpu_stack_walk *csw, STACKFRAME64 *frame,
|
|||
union ctx newctx = *context;
|
||||
|
||||
if (!fetch_next_frame32(csw, &newctx, frame->AddrPC.Offset - deltapc))
|
||||
goto done_err;
|
||||
{
|
||||
/* When running on wow64 setup, frame below can a 64 bit frame.
|
||||
* As we don't expose 64bit frames for now, pretend it's the first frame.
|
||||
*/
|
||||
if (frame->AddrPC.Offset == 0)
|
||||
goto done_err;
|
||||
newctx.x86.Eip = 0;
|
||||
}
|
||||
frame->AddrReturn.Mode = AddrModeFlat;
|
||||
frame->AddrReturn.Offset = newctx.x86.Eip;
|
||||
|
||||
|
|
Loading…
Reference in a new issue