[SHELL32] Don't try to follow a null pointer inside CFSDropTarget, this fixes a crash in shell32:CFSFolder

svn path=/trunk/; revision=74995
This commit is contained in:
Mark Jansen 2017-06-11 08:38:16 +00:00
parent 178bc77a1f
commit 6c7fe2fb5f

View file

@ -192,6 +192,9 @@ CFSDropTarget::CFSDropTarget():
HRESULT WINAPI CFSDropTarget::Initialize(LPWSTR PathTarget)
{
if (!PathTarget)
return E_UNEXPECTED;
cfShellIDList = RegisterClipboardFormatW(CFSTR_SHELLIDLIST);
if (!cfShellIDList)
return E_FAIL;
@ -199,6 +202,7 @@ HRESULT WINAPI CFSDropTarget::Initialize(LPWSTR PathTarget)
sPathTarget = (WCHAR *)SHAlloc((wcslen(PathTarget) + 1) * sizeof(WCHAR));
if (!sPathTarget)
return E_OUTOFMEMORY;
wcscpy(sPathTarget, PathTarget);
return S_OK;