Module: wine Branch: master Commit: 78b08cdabdc1ef6123d7d21b8d7b84809fb2b8f0 URL: http://source.winehq.org/git/wine.git/?a=commit;h=78b08cdabdc1ef6123d7d21b8d...
Author: André Hentschel nerv@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;