* autoload.cc (LoadDLLprime): Mask error code to low-order 16 bits.
(noload): Preserve sign when returning error code.
This commit is contained in:
parent
d83eb0c7d0
commit
d0f0ea3034
|
@ -1,3 +1,8 @@
|
||||||
|
2005-03-02 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
|
* autoload.cc (LoadDLLprime): Mask error code to low-order 16 bits.
|
||||||
|
(noload): Preserve sign when returning error code.
|
||||||
|
|
||||||
2005-03-02 Christopher Faylor <cgf@timesys.com>
|
2005-03-02 Christopher Faylor <cgf@timesys.com>
|
||||||
|
|
||||||
* spawn.cc (do_cleanup): Properly restore SIGINT/SIGQUIT even if they
|
* spawn.cc (do_cleanup): Properly restore SIGINT/SIGQUIT even if they
|
||||||
|
|
|
@ -89,7 +89,7 @@ _win32_" mangle (name, n) ": \n\
|
||||||
1:movl (2f),%eax \n\
|
1:movl (2f),%eax \n\
|
||||||
call *(%eax) \n\
|
call *(%eax) \n\
|
||||||
2:.long ." #dllname "_info \n\
|
2:.long ." #dllname "_info \n\
|
||||||
.long (" #n "+" #notimp ") | " #err "<<16 \n\
|
.long (" #n "+" #notimp ") | (((" #err ") & 0xffff) <<16) \n\
|
||||||
.asciz \"" #name "\" \n\
|
.asciz \"" #name "\" \n\
|
||||||
.text \n\
|
.text \n\
|
||||||
");
|
");
|
||||||
|
@ -128,7 +128,7 @@ noload: \n\
|
||||||
pushl %eax # First argument \n\
|
pushl %eax # First argument \n\
|
||||||
call _SetLastError@4 # Set it \n\
|
call _SetLastError@4 # Set it \n\
|
||||||
popl %eax # Get back argument \n\
|
popl %eax # Get back argument \n\
|
||||||
shrl $16,%eax # return value in high order word \n\
|
sarl $16,%eax # return value in high order word \n\
|
||||||
jmp *%edx # Return \n\
|
jmp *%edx # Return \n\
|
||||||
1: \n\
|
1: \n\
|
||||||
movl (%edx),%eax # Handle value \n\
|
movl (%edx),%eax # Handle value \n\
|
||||||
|
|
Loading…
Reference in New Issue