=?UTF-8?Q?Andr=C3=A9=20Hentschel=20?=: urlmon: Fix possible NULL pointer access in heap_strdup*.
Alexandre Julliard
julliard at winehq.org
Mon Nov 19 13:38:39 CST 2012
Module: wine
Branch: master
Commit: 78b08cdabdc1ef6123d7d21b8d7b84809fb2b8f0
URL: http://source.winehq.org/git/wine.git/?a=commit;h=78b08cdabdc1ef6123d7d21b8d7b84809fb2b8f0
Author: André Hentschel <nerv at dawncrow.de>
Date: Sat Nov 17 22:52:38 2012 +0100
urlmon: Fix possible NULL pointer access in heap_strdup*.
---
dlls/urlmon/urlmon_main.h | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/dlls/urlmon/urlmon_main.h b/dlls/urlmon/urlmon_main.h
index 2d51818..01de984 100644
--- a/dlls/urlmon/urlmon_main.h
+++ b/dlls/urlmon/urlmon_main.h
@@ -261,7 +261,8 @@ static inline LPWSTR heap_strdupW(LPCWSTR str)
size = (strlenW(str)+1)*sizeof(WCHAR);
ret = heap_alloc(size);
- memcpy(ret, str, size);
+ if(ret)
+ memcpy(ret, str, size);
}
return ret;
@@ -289,7 +290,8 @@ static inline LPWSTR heap_strdupAtoW(const char *str)
if(str) {
DWORD len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
ret = heap_alloc(len*sizeof(WCHAR));
- MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
+ if(ret)
+ MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
}
return ret;
@@ -302,7 +304,8 @@ static inline char *heap_strdupWtoA(const WCHAR *str)
if(str) {
size_t size = WideCharToMultiByte(CP_ACP, 0, str, -1, NULL, 0, NULL, NULL);
ret = heap_alloc(size);
- WideCharToMultiByte(CP_ACP, 0, str, -1, ret, size, NULL, NULL);
+ if(ret)
+ WideCharToMultiByte(CP_ACP, 0, str, -1, ret, size, NULL, NULL);
}
return ret;
More information about the wine-cvs
mailing list