only save and restore ebp when stack generation is turned on (for parameters taken or returned on the nsis stack), just like in the old working code
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5789 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
c102675112
commit
b3d6dc00fd
1 changed files with 1 additions and 2 deletions
|
@ -327,7 +327,6 @@ FUNC_DECL _CallProc
|
||||||
push ebx
|
push ebx
|
||||||
push edi
|
push edi
|
||||||
push esi
|
push esi
|
||||||
push ebp
|
|
||||||
|
|
||||||
IFDEF SYSTEM_LOG_DEBUG
|
IFDEF SYSTEM_LOG_DEBUG
|
||||||
SYSTEM_LOG_INIT
|
SYSTEM_LOG_INIT
|
||||||
|
@ -347,6 +346,7 @@ FUNC_DECL _CallProc
|
||||||
jne stack_expand_done
|
jne stack_expand_done
|
||||||
|
|
||||||
;# Save previous stack location
|
;# Save previous stack location
|
||||||
|
push ebp
|
||||||
mov dword ptr [_LastStackReal],esp
|
mov dword ptr [_LastStackReal],esp
|
||||||
cmp dword ptr [_LastStackPlace],0
|
cmp dword ptr [_LastStackPlace],0
|
||||||
jne stack_adjust
|
jne stack_adjust
|
||||||
|
@ -657,7 +657,6 @@ handling_error_option_done:
|
||||||
;# Return
|
;# Return
|
||||||
mov eax,dword ptr [ebp+8]
|
mov eax,dword ptr [ebp+8]
|
||||||
;# Restore registers
|
;# Restore registers
|
||||||
pop ebp
|
|
||||||
pop esi
|
pop esi
|
||||||
pop edi
|
pop edi
|
||||||
pop ebx
|
pop ebx
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue