Jacek Caban : urlmon: Fixed protocol tests on IE11.

Alexandre Julliard julliard at winehq.org
Wed Feb 26 15:45:04 CST 2014


Module: wine
Branch: master
Commit: 9c642455f08bf13fd22417261b191a6ad086fd19
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=9c642455f08bf13fd22417261b191a6ad086fd19

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Wed Feb 26 14:40:37 2014 +0100

urlmon: Fixed protocol tests on IE11.

---

 dlls/urlmon/tests/protocol.c |   14 +++++++++++++-
 include/urlmon.idl           |    8 +++++++-
 2 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/dlls/urlmon/tests/protocol.c b/dlls/urlmon/tests/protocol.c
index 8a19329..9ffa04d 100644
--- a/dlls/urlmon/tests/protocol.c
+++ b/dlls/urlmon/tests/protocol.c
@@ -90,6 +90,7 @@ DEFINE_EXPECT(GetBindString_ACCEPT_MIMES);
 DEFINE_EXPECT(GetBindString_USER_AGENT);
 DEFINE_EXPECT(GetBindString_POST_COOKIE);
 DEFINE_EXPECT(GetBindString_URL);
+DEFINE_EXPECT(GetBindString_ROOTDOC_URL);
 DEFINE_EXPECT(QueryService_HttpNegotiate);
 DEFINE_EXPECT(QueryService_InternetProtocol);
 DEFINE_EXPECT(QueryService_HttpSecurity);
@@ -430,7 +431,12 @@ static IServiceProvider service_provider = { &ServiceProviderVtbl };
 
 static HRESULT WINAPI Stream_QueryInterface(IStream *iface, REFIID riid, void **ppv)
 {
-    ok(0, "unexpected call\n");
+    static const IID IID_strm_unknown = {0x2f68429a,0x199a,0x4043,{0x93,0x11,0xf2,0xfe,0x7c,0x13,0xcc,0xb9}};
+
+    if(!IsEqualGUID(&IID_strm_unknown, riid)) /* IE11 */
+        ok(0, "unexpected call %s\n", wine_dbgstr_guid(riid));
+
+    *ppv = NULL;
     return E_NOINTERFACE;
 }
 
@@ -1384,6 +1390,10 @@ static HRESULT WINAPI BindInfo_GetBindString(IInternetBindInfo *iface, ULONG ulS
         memcpy(*ppwzStr, binding_urls[tested_protocol], size);
         return S_OK;
     }
+    case BINDSTRING_ROOTDOC_URL:
+        CHECK_EXPECT(GetBindString_ROOTDOC_URL);
+        ok(cEl == 1, "cEl=%d, expected 1\n", cEl);
+        return E_NOTIMPL;
     default:
         ok(0, "unexpected ulStringType %d\n", ulStringType);
     }
@@ -2843,6 +2853,7 @@ static BOOL http_protocol_start(LPCWSTR url, BOOL use_iuri)
         SET_EXPECT(ReportProgress_DIRECTBIND);
     if(!got_user_agent)
         SET_EXPECT(GetBindString_USER_AGENT);
+    SET_EXPECT(GetBindString_ROOTDOC_URL);
     SET_EXPECT(GetBindString_ACCEPT_MIMES);
     SET_EXPECT(QueryService_HttpNegotiate);
     SET_EXPECT(BeginningTransaction);
@@ -2884,6 +2895,7 @@ static BOOL http_protocol_start(LPCWSTR url, BOOL use_iuri)
         CHECK_CALLED(GetBindString_USER_AGENT);
         got_user_agent = TRUE;
     }
+    CLEAR_CALLED(GetBindString_ROOTDOC_URL); /* New in IE11 */
     CHECK_CALLED(GetBindString_ACCEPT_MIMES);
     CHECK_CALLED(QueryService_HttpNegotiate);
     CHECK_CALLED(BeginningTransaction);
diff --git a/include/urlmon.idl b/include/urlmon.idl
index 94d444a..2ccba5b 100644
--- a/include/urlmon.idl
+++ b/include/urlmon.idl
@@ -722,7 +722,13 @@ interface IInternetBindInfo : IUnknown
         BINDSTRING_URL,
         BINDSTRING_IID,
         BINDSTRING_FLAG_BIND_TO_OBJECT,
-        BINDSTRING_PTR_BIND_CONTEXT
+        BINDSTRING_PTR_BIND_CONTEXT,
+        BINDSTRING_XDR_ORIGIN,
+        BINDSTRING_DOWNLOADPATH,
+        BINDSTRING_ROOTDOC_URL,
+        BINDSTRING_INITIAL_FILENAME,
+        BINDSTRING_PROXY_USERNAME,
+        BINDSTRING_PROXY_PASSWORD
     } BINDSTRING;
 
     HRESULT GetBindInfo(




More information about the wine-cvs mailing list