Author: pschweitzer
Date: Sun May 11 08:57:45 2008
New Revision: 33443
URL: 
http://svn.reactos.org/svn/reactos?rev=33443&view=rev
Log:
Synced urlmon.dll with Wine HEAD.
This *does not* fix Downloader
Modified:
    trunk/reactos/dll/win32/urlmon/file.c
    trunk/reactos/dll/win32/urlmon/internet.c
    trunk/reactos/dll/win32/urlmon/urlmon.spec
    trunk/reactos/include/psdk/urlmon.idl
Modified: trunk/reactos/dll/win32/urlmon/file.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/urlmon/file.c?re…
==============================================================================
--- trunk/reactos/dll/win32/urlmon/file.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/urlmon/file.c [iso-8859-1] Sun May 11 08:57:45 2008
@@ -99,8 +99,7 @@
     DWORD grfBINDF = 0;
     LARGE_INTEGER size;
     DWORD len;
-    LPWSTR url, mime = NULL;
-    LPCWSTR file_name;
+    LPWSTR url, mime = NULL, file_name;
     WCHAR null_char = 0;
     BOOL first_call = FALSE;
     HRESULT hres;
@@ -136,6 +135,8 @@
         IInternetProtocolSink_ReportProgress(pOIProtSink, BINDSTATUS_DIRECTBIND, NULL);
     if(!This->file) {
+        WCHAR *ptr;
+
         first_call = TRUE;
         IInternetProtocolSink_ReportProgress(pOIProtSink, BINDSTATUS_SENDINGREQUEST,
&null_char);
@@ -145,6 +146,13 @@
             file_name += 2;
         if(*file_name == '/')
             file_name++;
+
+        for(ptr = file_name; *ptr; ptr++) {
+            if(*ptr == '?' || *ptr == '#') {
+                *ptr = 0;
+                break;
+            }
+        }
         This->file = CreateFileW(file_name, GENERIC_READ, FILE_SHARE_READ, NULL,
                                  OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
Modified: trunk/reactos/dll/win32/urlmon/internet.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/urlmon/internet.…
==============================================================================
--- trunk/reactos/dll/win32/urlmon/internet.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/urlmon/internet.c [iso-8859-1] Sun May 11 08:57:45 2008
@@ -298,3 +298,12 @@
     return S_OK;
 }
+
+/***********************************************************************
+ *             CoInternetSetFeatureEnabled (URLMON.@)
+ */
+HRESULT WINAPI CoInternetSetFeatureEnabled(INTERNETFEATURELIST feature, DWORD flags, BOOL
enable)
+{
+    FIXME("%d, 0x%08x, %x, stub\n", feature, flags, enable);
+    return E_NOTIMPL;
+}
Modified: trunk/reactos/dll/win32/urlmon/urlmon.spec
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/urlmon/urlmon.sp…
==============================================================================
--- trunk/reactos/dll/win32/urlmon/urlmon.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/urlmon/urlmon.spec [iso-8859-1] Sun May 11 08:57:45 2008
@@ -19,6 +19,7 @@
 @ stdcall CoInternetGetSession(long ptr long)
 @ stdcall CoInternetParseUrl(wstr long long wstr long ptr long)
 @ stdcall CoInternetQueryInfo(ptr long long ptr long ptr long)
+@ stdcall CoInternetSetFeatureEnabled(long long long)
 @ stub CompareSecurityIds
 @ stub CopyBindInfo
 @ stdcall CopyStgMedium(ptr ptr)
Modified: trunk/reactos/include/psdk/urlmon.idl
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/psdk/urlmon.idl?re…
==============================================================================
--- trunk/reactos/include/psdk/urlmon.idl [iso-8859-1] (original)
+++ trunk/reactos/include/psdk/urlmon.idl [iso-8859-1] Sun May 11 08:57:45 2008
@@ -1325,6 +1325,43 @@
         [in] LPCODEBASEHOLD lpcbh);
 }
+typedef enum _tagINTERNETFEATURELIST
+{
+    FEATURE_OBJECT_CACHING,
+    FEATURE_ZONE_ELEVATION,
+    FEATURE_MIME_HANDLING,
+    FEATURE_MIME_SNIFFING,
+    FEATURE_WINDOW_RESTRICTIONS,
+    FEATURE_WEBOC_POPUPMANAGEMENT,
+    FEATURE_BEHAVIORS,
+    FEATURE_DISABLE_MK_PROTOCOL,
+    FEATURE_LOCALMACHINE_LOCKDOWN,
+    FEATURE_SECURITYBAND,
+    FEATURE_RESTRICT_ACTIVEXINSTALL,
+    FEATURE_VALIDATE_NAVIGATE_URL,
+    FEATURE_RESTRICT_FILEDOWNLOAD,
+    FEATURE_ADDON_MANAGEMENT,
+    FEATURE_PROTOCOL_LOCKDOWN,
+    FEATURE_HTTP_USERNAME_PASSWORD_DISABLE,
+    FEATURE_SAFE_BINDTOOBJECT,
+    FEATURE_UNC_SAVEDFILECHECK,
+    FEATURE_GET_URL_DOM_FILEPATH_UNENCODED,
+    FEATURE_TABBED_BROWSING,
+    FEATURE_SSLUX,
+    FEATURE_DISABLE_NAVIGATION_SOUNDS,
+    FEATURE_DISABLE_LEGACY_COMPRESSION,
+    FEATURE_FORCE_ADDR_AND_STATUS,
+    FEATURE_XMLHTTP,
+    FEATURE_DISABLE_TELNET_PROTOCOL,
+    FEATURE_FEEDS,
+    FEATURE_BLOCK_INPUT_PROMPTS,
+    FEATURE_DOMSTORAGE,
+    FEATURE_XDOMAINREQUEST,
+    FEATURE_DATAURI,
+    FEATURE_AJAX_CONNECTIONSERVICES,
+    FEATURE_ENTRY_COUNT
+} INTERNETFEATURELIST;
+
 cpp_quote("DEFINE_GUID(CLSID_InternetSecurityManager, 0x7b8a2d94, 0x0ac9, 0x11d1,
0x89, 0x6c, 0x00, 0xc0, 0x4f, 0xB6, 0xbf, 0xc4);")
 cpp_quote("DEFINE_GUID(CLSID_InternetZoneManager, 0x7B8A2D95, 0x0AC9, 0x11D1, 0x89,
0x6C, 0x00, 0xC0, 0x4F, 0xB6, 0xBF, 0xC4);")
 cpp_quote("DEFINE_GUID(IID_IAsyncMoniker, 0x79EAC9D3, 0xBAF9, 0x11CE, 0x8C, 0x82,
0x00, 0xAA, 0x00, 0x4B, 0xA9, 0x0B);")
@@ -1391,6 +1428,7 @@
 cpp_quote("HRESULT WINAPI CoInternetCreateZoneManager(IServiceProvider*,
IInternetZoneManager**, DWORD);")
 cpp_quote("HRESULT WINAPI
CoInternetParseUrl(LPCWSTR,PARSEACTION,DWORD,LPWSTR,DWORD,DWORD*,DWORD);")
 cpp_quote("HRESULT WINAPI
CoInternetQueryInfo(LPCWSTR,QUERYOPTION,DWORD,LPVOID,DWORD,DWORD*,DWORD);")
+cpp_quote("HRESULT WINAPI
CoInternetSetFeatureEnabled(INTERNETFEATURELIST,DWORD,BOOL);")
 cpp_quote("HRESULT WINAPI
CreateFormatEnumerator(UINT,FORMATETC*,IEnumFORMATETC**);")
 cpp_quote("HRESULT WINAPI GetSoftwareUpdateInfo( LPCWSTR szDistUnit, LPSOFTDISTINFO
psdi);")
 cpp_quote("HRESULT WINAPI
FaultInIEFeature(HWND,uCLSSPEC*,QUERYCONTEXT*,DWORD);")