Module: wine Branch: master Commit: 9c642455f08bf13fd22417261b191a6ad086fd19 URL: http://source.winehq.org/git/wine.git/?a=commit;h=9c642455f08bf13fd22417261b...
Author: Jacek Caban jacek@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(