HTTP library: preserve registers in stdcalls.

git-svn-id: svn://kolibrios.org@4216 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
hidnplayr 2013-11-12 10:37:17 +00:00
parent af06bca26e
commit f613b39ab9

View File

@ -99,11 +99,13 @@ lib_init: ;//////////////////////////////////////////////////////////////////;;
jnz .error jnz .error
; load proxy settings ; load proxy settings
pusha
invoke ini.get_str, inifile, sec_proxy, key_proxy, proxyAddr, 256, proxyAddr invoke ini.get_str, inifile, sec_proxy, key_proxy, proxyAddr, 256, proxyAddr
invoke ini.get_int, inifile, sec_proxy, key_proxyport, 80 invoke ini.get_int, inifile, sec_proxy, key_proxyport, 80
mov [proxyPort], eax mov [proxyPort], eax
invoke ini.get_str, inifile, sec_proxy, key_user, proxyUser, 256, proxyUser invoke ini.get_str, inifile, sec_proxy, key_user, proxyUser, 256, proxyUser
invoke ini.get_str, inifile, sec_proxy, key_password, proxyPassword, 256, proxyPassword invoke ini.get_str, inifile, sec_proxy, key_password, proxyPassword, 256, proxyPassword
popa
DEBUGF 1, "HTTP library: init OK\n" DEBUGF 1, "HTTP library: init OK\n"
@ -139,6 +141,8 @@ locals
port dd ? port dd ?
endl endl
pusha
; split the URL into hostname and pageaddr ; split the URL into hostname and pageaddr
stdcall parse_url, [URL] stdcall parse_url, [URL]
test eax, eax test eax, eax
@ -201,10 +205,13 @@ endl
HTTP_init_buffer [buffer], [socketnum] HTTP_init_buffer [buffer], [socketnum]
ret ; return buffer ptr popa
mov eax, [buffer] ; return buffer ptr
ret
.error: .error:
DEBUGF 1, "Error!\n" DEBUGF 1, "Error!\n"
popa
xor eax, eax ; return 0 = error xor eax, eax ; return 0 = error
ret ret
@ -230,6 +237,7 @@ locals
port dd ? port dd ?
endl endl
pusha
; split the URL into hostname and pageaddr ; split the URL into hostname and pageaddr
stdcall parse_url, [URL] stdcall parse_url, [URL]
test eax, eax test eax, eax
@ -293,10 +301,13 @@ endl
HTTP_init_buffer [buffer], [socketnum] HTTP_init_buffer [buffer], [socketnum]
popa
mov eax, [buffer]
ret ; return buffer ptr ret ; return buffer ptr
.error: .error:
DEBUGF 1, "Error!\n" DEBUGF 1, "Error!\n"
popa
xor eax, eax ; return 0 = error xor eax, eax ; return 0 = error
ret ret
@ -323,6 +334,7 @@ locals
port dd ? port dd ?
endl endl
pusha
; split the URL into hostname and pageaddr ; split the URL into hostname and pageaddr
stdcall parse_url, [URL] stdcall parse_url, [URL]
test eax, eax test eax, eax
@ -399,12 +411,13 @@ endl
HTTP_init_buffer [buffer], [socketnum] HTTP_init_buffer [buffer], [socketnum]
; mov eax, [buffer] popa
mov eax, [buffer]
ret ; return buffer ptr ret ; return buffer ptr
.error: .error:
DEBUGF 1, "Error!\n" DEBUGF 1, "Error!\n"
popa
xor eax, eax ; return 0 = error xor eax, eax ; return 0 = error
ret ret