Module: wine Branch: master Commit: 62e0a8ca38a0ab9216b0f232811280918083f1d5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=62e0a8ca38a0ab9216b0f23281...
Author: Rob Shearman robertshearman@gmail.com Date: Fri Jun 20 10:14:38 2008 +0100
wininet: Fix memory leak in HTTP_DeleteCustomHeader.
Free the memory associated with the field and value of the custom header otherwise it will be leaked. Found by Valgrind.
---
dlls/wininet/http.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index 79e3511..10fa8a5 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c @@ -4141,6 +4141,9 @@ static BOOL HTTP_DeleteCustomHeader(LPWININETHTTPREQW lpwhr, DWORD index) return FALSE; lpwhr->nCustHeaders--;
+ HeapFree(GetProcessHeap(), 0, lpwhr->pCustHeaders[index].lpszField); + HeapFree(GetProcessHeap(), 0, lpwhr->pCustHeaders[index].lpszValue); + memmove( &lpwhr->pCustHeaders[index], &lpwhr->pCustHeaders[index+1], (lpwhr->nCustHeaders - index)* sizeof(HTTPHEADERW) ); memset( &lpwhr->pCustHeaders[lpwhr->nCustHeaders], 0, sizeof(HTTPHEADERW) );