From c786fcbecc1fb2346247ea7a8cfa4a77ad2c812b Mon Sep 17 00:00:00 2001 From: The Wine Synchronizer Date: Mon, 14 Jan 2008 16:32:09 +0000 Subject: [PATCH] Autosyncing with Wine HEAD svn path=/trunk/; revision=31794 --- reactos/dll/win32/shlwapi/ordinal.c | 4 +--- reactos/dll/win32/shlwapi/shlwapi.rbuild | 2 ++ reactos/dll/win32/shlwapi/url.c | 7 +++++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/reactos/dll/win32/shlwapi/ordinal.c b/reactos/dll/win32/shlwapi/ordinal.c index 8dc0ffa3f69..c4b45c00214 100644 --- a/reactos/dll/win32/shlwapi/ordinal.c +++ b/reactos/dll/win32/shlwapi/ordinal.c @@ -46,6 +46,7 @@ #include "shlwapi.h" #include "shellapi.h" #include "commdlg.h" +#include "mshtmhst.h" #include "wine/unicode.h" #include "wine/debug.h" @@ -3226,13 +3227,10 @@ HRESULT WINAPI IUnknown_EnableModeless(IUnknown *lpUnknown, BOOL bModeless) EnableModeless(IOleInPlaceFrame); else if (IsIface(IShellBrowser)) EnableModeless(IShellBrowser); -#if 0 - /* FIXME: Wine has no headers for these objects yet */ else if (IsIface(IInternetSecurityMgrSite)) EnableModeless(IInternetSecurityMgrSite); else if (IsIface(IDocHostUIHandler)) EnableModeless(IDocHostUIHandler); -#endif else return hRet; diff --git a/reactos/dll/win32/shlwapi/shlwapi.rbuild b/reactos/dll/win32/shlwapi/shlwapi.rbuild index 2f205e181a4..2fe3a56b0f7 100644 --- a/reactos/dll/win32/shlwapi/shlwapi.rbuild +++ b/reactos/dll/win32/shlwapi/shlwapi.rbuild @@ -1,5 +1,6 @@ + . @@ -41,3 +42,4 @@ shlwapi.rc shlwapi.spec + diff --git a/reactos/dll/win32/shlwapi/url.c b/reactos/dll/win32/shlwapi/url.c index d1f64fefc1f..fed9a9f792d 100644 --- a/reactos/dll/win32/shlwapi/url.c +++ b/reactos/dll/win32/shlwapi/url.c @@ -843,6 +843,9 @@ HRESULT WINAPI UrlEscapeA( HRESULT ret; DWORD lenW = sizeof(bufW)/sizeof(WCHAR), lenA; + if (!pszEscaped || !pcchEscaped || !*pcchEscaped) + return E_INVALIDARG; + if(!RtlCreateUnicodeStringFromAsciiz(&urlW, pszUrl)) return E_INVALIDARG; if((ret = UrlEscapeW(urlW.Buffer, escapedW, &lenW, dwFlags)) == E_POINTER) { @@ -851,13 +854,13 @@ HRESULT WINAPI UrlEscapeA( } if(ret == S_OK) { RtlUnicodeToMultiByteSize(&lenA, escapedW, lenW * sizeof(WCHAR)); - if(pszEscaped && *pcchEscaped > lenA) { + if(*pcchEscaped > lenA) { RtlUnicodeToMultiByteN(pszEscaped, *pcchEscaped - 1, &lenA, escapedW, lenW * sizeof(WCHAR)); pszEscaped[lenA] = 0; *pcchEscaped = lenA; } else { *pcchEscaped = lenA + 1; - ret = E_INVALIDARG; + ret = E_POINTER; } } if(escapedW != bufW) HeapFree(GetProcessHeap(), 0, escapedW);