X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/0d2220ca1c127fc19c249e6e59dec2ac47107854..064591f1a09841a3b4d5d360f1a0a32179faa5f8:/src/xbt/backtrace_windows.c diff --git a/src/xbt/backtrace_windows.c b/src/xbt/backtrace_windows.c index 16cdd74a4b..46c842a939 100644 --- a/src/xbt/backtrace_windows.c +++ b/src/xbt/backtrace_windows.c @@ -139,11 +139,13 @@ int backtrace(void **buffer, int size) /* ebp points on stack base */ /* esp points on stack pointer, ie on last stacked element (current element) */ _asm call $ + 5 - _asm pop eax - _asm mov context.Eip, eax - _asm mov eax, esp - _asm mov context.Esp, eax - _asm mov context.Ebp, ebp dbg_hlp_init(GetCurrentProcess()); + _asm pop eax + _asm mov context.Eip, eax + _asm mov eax, esp + _asm mov context.Esp, eax + _asm mov context.Ebp, ebp + + dbg_hlp_init(GetCurrentProcess()); if ((NULL == dbg_hlp) || (size <= 0) || (NULL == buffer)) { errno = EINVAL;