From 1526c2358d0eaed95b8cc7ca026e3d2cb0fcd11b Mon Sep 17 00:00:00 2001 From: Christoph von Wittich Date: Tue, 10 Nov 2009 20:09:00 +0000 Subject: [PATCH] sync shell32/shelllink to wine 1.1.32 svn path=/trunk/; revision=44079 --- reactos/dll/win32/shell32/shelllink.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/reactos/dll/win32/shell32/shelllink.c b/reactos/dll/win32/shell32/shelllink.c index 67c678d5c7d..6ad7b174d38 100644 --- a/reactos/dll/win32/shell32/shelllink.c +++ b/reactos/dll/win32/shell32/shelllink.c @@ -219,35 +219,35 @@ static HRESULT ShellLink_QueryInterface( IShellLinkImpl *This, REFIID riid, LPV } else if(IsEqualIID(riid, &IID_IShellLinkW)) { - *ppvObj = (void *)&(This->lpvtblw); + *ppvObj = &(This->lpvtblw); } else if(IsEqualIID(riid, &IID_IPersistFile)) { - *ppvObj = (void *)&(This->lpvtblPersistFile); + *ppvObj = &(This->lpvtblPersistFile); } else if(IsEqualIID(riid, &IID_IPersistStream)) { - *ppvObj = (void *)&(This->lpvtblPersistStream); + *ppvObj = &(This->lpvtblPersistStream); } else if(IsEqualIID(riid, &IID_IShellLinkDataList)) { - *ppvObj = (void *)&(This->lpvtblShellLinkDataList); + *ppvObj = &(This->lpvtblShellLinkDataList); } else if(IsEqualIID(riid, &IID_IShellExtInit)) { - *ppvObj = (void *)&(This->lpvtblShellExtInit); + *ppvObj = &(This->lpvtblShellExtInit); } else if(IsEqualIID(riid, &IID_IContextMenu)) { - *ppvObj = (void *)&(This->lpvtblContextMenu); + *ppvObj = &(This->lpvtblContextMenu); } else if(IsEqualIID(riid, &IID_IObjectWithSite)) { - *ppvObj = (void *)&(This->lpvtblObjectWithSite); + *ppvObj = &(This->lpvtblObjectWithSite); } else if(IsEqualIID(riid, &IID_IShellPropSheetExt)) { - *ppvObj = (void *)&(This->lpvtblPropSheetExt); + *ppvObj = &(This->lpvtblPropSheetExt); } if(*ppvObj) @@ -299,7 +299,7 @@ static ULONG ShellLink_Release( IShellLinkImpl *This ) if (This->pPidl) ILFree(This->pPidl); - LocalFree((HANDLE)This); + LocalFree(This); return 0; } @@ -308,7 +308,7 @@ static HRESULT ShellLink_GetClassID( IShellLinkImpl *This, CLSID *pclsid ) { TRACE("%p %p\n", This, pclsid); - memcpy( pclsid, &CLSID_ShellLink, sizeof (CLSID) ); + *pclsid = CLSID_ShellLink; return S_OK; } @@ -1651,6 +1651,8 @@ static HRESULT WINAPI IShellLinkA_fnSetPath(IShellLinkA * iface, LPCSTR pszFile) TRACE("(%p)->(path=%s)\n",This, pszFile); + if (!pszFile) return E_INVALIDARG; + str = HEAP_strdupAtoW(GetProcessHeap(), 0, pszFile); if( !str ) return E_OUTOFMEMORY;