Hans Leidekker : wininet: Release the request in WININET_GetProxyServer and WININET_SetProxyAuthorization .
Alexandre Julliard
julliard at winehq.org
Thu Jul 23 10:00:56 CDT 2009
Module: wine
Branch: master
Commit: 4b1e0de90f32cfb263fafd0fd009d6645478a0e5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=4b1e0de90f32cfb263fafd0fd009d6645478a0e5
Author: Hans Leidekker <hans at 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;
}
/***********************************************************************
More information about the wine-cvs
mailing list