Changelog:
dlls/wininet/http.c: HTTP_HttpOpenRequestA
Calculate size from the same argument that is used later
Check for possible NULL arguments
--
Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de
Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
Index: wine/dlls/wininet/http.c
===================================================================
RCS file: /home/wine/wine/dlls/wininet/http.c,v
retrieving revision 1.34
diff -u -r1.34 http.c
--- wine/dlls/wininet/http.c 14 Apr 2003 21:32:36 -0000 1.34
+++ wine/dlls/wininet/http.c 5 May 2003 17:38:13 -0000
@@ -398,8 +398,18 @@
sprintf(proxy, "
http://%s/", hIC->lpszProxy);
InternetCrackUrlA(proxy, 0, 0, &UrlComponents);
if (strlen(UrlComponents.lpszHostName)) {
- /* for constant 13 see above */
- char* url = HeapAlloc(GetProcessHeap(), 0, strlen(lpwhr->lpszHostName) + strlen(lpwhr->lpszPath) + 13);
+ char* url;
+ DWORD needed = 13;/* for constant 13 see above */
+
+ if(lpwhs->lpszServerName)
+ needed += strlen(lpwhs->lpszServerName);
+ else
+ TRACE("no lpwhs->lpszServerName\n");
+ if(lpwhr->lpszPath)
+ needed += strlen(lpwhr->lpszPath);
+ else
+ TRACE("no lpwhr->lpszPath\n");
+ url= HeapAlloc(GetProcessHeap(), 0, needed);
if(UrlComponents.nPort == INTERNET_INVALID_PORT_NUMBER)
UrlComponents.nPort = INTERNET_DEFAULT_HTTP_PORT;