* in dpmi_longjmp, fix wrong parameter retrieving,

old code was based on assumption that parameters
    are on stack. New code works in both cases.
    

git-svn-id: trunk@5671 -
This commit is contained in:
pierre 2006-12-21 23:54:38 +00:00
parent 1867a46f34
commit 8bcf2285c8

View File

@ -591,11 +591,13 @@ begin
if (exception_level>0) then
dec(exception_level);
asm
{ copy from longjmp.S }
{ Adapted to avoid being sensitive to
argument being on stack or in registers 2006-12-21 PM }
movl rec,%edi { get dpmi_jmp_buf }
movl return_value,%eax { store retval in j->eax }
{ restore compiler shit }
popl %ebp
{ copy from longjmp.S }
movl 4(%esp),%edi { get dpmi_jmp_buf }
movl 8(%esp),%eax { store retval in j->eax }
movl %eax,0(%edi)
movw 46(%edi),%fs