Rob Shearman : wininet: The lpszLocalFileName parameter to CommitUrlCacheEntryA is optional, so check before converting it from Unicode to ANSI.

Alexandre Julliard julliard at winehq.org
Mon Mar 17 10:46:43 CDT 2008


Module: wine
Branch: master
Commit: 99f651bd3707b869297da43c32c23606f89a3fd1
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=99f651bd3707b869297da43c32c23606f89a3fd1

Author: Rob Shearman <rob at codeweavers.com>
Date:   Mon Mar 17 13:22:14 2008 +0000

wininet: The lpszLocalFileName parameter to CommitUrlCacheEntryA is optional, so check before converting it from Unicode to ANSI.

---

 dlls/wininet/urlcache.c |   14 +++++++++-----
 1 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/dlls/wininet/urlcache.c b/dlls/wininet/urlcache.c
index c5e37d8..429867a 100644
--- a/dlls/wininet/urlcache.c
+++ b/dlls/wininet/urlcache.c
@@ -2494,11 +2494,14 @@ BOOL WINAPI CommitUrlCacheEntryA(
         goto cleanup;
     MultiByteToWideChar(CP_ACP, 0, lpszUrlName, -1, url_name, len);
 
-    len = MultiByteToWideChar(CP_ACP, 0, lpszLocalFileName, -1, NULL, 0);
-    local_file_name = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
-    if (!local_file_name)
-        goto cleanup;
-    MultiByteToWideChar(CP_ACP, 0, lpszLocalFileName, -1, local_file_name, len);
+    if (lpszLocalFileName)
+    {
+        len = MultiByteToWideChar(CP_ACP, 0, lpszLocalFileName, -1, NULL, 0);
+        local_file_name = HeapAlloc(GetProcessHeap(), 0, len * sizeof(WCHAR));
+        if (!local_file_name)
+            goto cleanup;
+        MultiByteToWideChar(CP_ACP, 0, lpszLocalFileName, -1, local_file_name, len);
+    }
     if (lpszFileExtension)
     {
         len = MultiByteToWideChar(CP_ACP, 0, lpszFileExtension, -1, NULL, 0);
@@ -2522,6 +2525,7 @@ BOOL WINAPI CommitUrlCacheEntryA(
 
 cleanup:
     HeapFree(GetProcessHeap(), 0, original_url);
+    HeapFree(GetProcessHeap(), 0, file_extension);
     HeapFree(GetProcessHeap(), 0, local_file_name);
     HeapFree(GetProcessHeap(), 0, url_name);
 




More information about the wine-cvs mailing list