Module: wine Branch: master Commit: 07d84bf656abf3c7b0e6be5f6170e41d70094a52 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=07d84bf656abf3c7b0e6be5f...
Author: Marcus Meissner marcus@jet.franken.de Date: Mon Sep 25 06:43:41 2006 +0200
ntdll: Avoid ebx being clobbered in exception handler.
---
dlls/ntdll/signal_i386.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/dlls/ntdll/signal_i386.c b/dlls/ntdll/signal_i386.c index 6ff7e39..44f47ec 100644 --- a/dlls/ntdll/signal_i386.c +++ b/dlls/ntdll/signal_i386.c @@ -1481,7 +1481,7 @@ __ASM_GLOBAL_FUNC( DbgUserBreakPoint, "i __ASM_GLOBAL_FUNC( EXC_CallHandler, " pushl %ebp\n" " movl %esp, %ebp\n" -" subl $4,%esp\n" +" pushl %ebx\n" " movl 28(%ebp), %edx\n" /* ugly hack to pass the 6th param needed because of Shrinker */ " pushl 24(%ebp)\n" " pushl 20(%ebp)\n" @@ -1489,6 +1489,7 @@ __ASM_GLOBAL_FUNC( EXC_CallHandler, " pushl 12(%ebp)\n" " pushl 8(%ebp)\n" " call " __ASM_NAME("call_exception_handler") "\n" +" popl %ebx\n" " leave\n" " ret\n" );