Hans Leidekker : wininet: Release the request in WININET_GetProxyServer and WININET_SetProxyAuthorization .
Module: wine Branch: master Commit: 4b1e0de90f32cfb263fafd0fd009d6645478a0e5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=4b1e0de90f32cfb263fafd0fd0... Author: Hans Leidekker <hans(a)codeweavers.com> Date: Thu Jul 23 12:04:22 2009 +0200 wininet: Release the request in WININET_GetProxyServer and WININET_SetProxyAuthorization. --- dlls/wininet/dialogs.c | 32 ++++++++++++++++++++++---------- 1 files changed, 22 insertions(+), 10 deletions(-) diff --git a/dlls/wininet/dialogs.c b/dlls/wininet/dialogs.c index f98493a..4a4df92 100644 --- a/dlls/wininet/dialogs.c +++ b/dlls/wininet/dialogs.c @@ -65,19 +65,20 @@ static BOOL WININET_GetProxyServer( HINTERNET hRequest, LPWSTR szBuf, DWORD sz ) http_request_t *lpwhr; http_session_t *lpwhs = NULL; appinfo_t *hIC = NULL; + BOOL ret = FALSE; LPWSTR p; lpwhr = (http_request_t*) WININET_GetObject( hRequest ); if (NULL == lpwhr) - return FALSE; + goto done; lpwhs = lpwhr->lpHttpSession; if (NULL == lpwhs) - return FALSE; + goto done; hIC = lpwhs->lpAppInfo; if (NULL == hIC) - return FALSE; + goto done; lstrcpynW(szBuf, hIC->lpszProxy, sz); @@ -86,7 +87,11 @@ static BOOL WININET_GetProxyServer( HINTERNET hRequest, LPWSTR szBuf, DWORD sz ) if (p) *p = 0; - return TRUE; + ret = TRUE; + +done: + WININET_Release( &lpwhr->hdr ); + return ret; } /*********************************************************************** @@ -206,32 +211,39 @@ static BOOL WININET_SetProxyAuthorization( HINTERNET hRequest, http_request_t *lpwhr; http_session_t *lpwhs; appinfo_t *hIC; + BOOL ret = FALSE; LPWSTR p; lpwhr = (http_request_t*) WININET_GetObject( hRequest ); if( !lpwhr ) - return FALSE; - + return FALSE; + lpwhs = lpwhr->lpHttpSession; if (NULL == lpwhs || lpwhs->hdr.htype != WH_HHTTPSESSION) { INTERNET_SetLastError(ERROR_INTERNET_INCORRECT_HANDLE_TYPE); - return FALSE; + goto done; } hIC = lpwhs->lpAppInfo; p = heap_strdupW(username); if( !p ) - return FALSE; + goto done; + hIC->lpszProxyUsername = p; p = heap_strdupW(password); if( !p ) - return FALSE; + goto done; + hIC->lpszProxyPassword = p; - return TRUE; + ret = TRUE; + +done: + WININET_Release( &lpwhr->hdr ); + return ret; } /***********************************************************************
participants (1)
-
Alexandre Julliard