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