diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c index 7bccce19199..7768b2b7fe5 100644 --- a/dlls/mshtml/nsio.c +++ b/dlls/mshtml/nsio.c @@ -568,7 +568,9 @@ static nsresult NSAPI nsChannel_Open(nsIHttpChannel *iface, nsIInputStream **_re static BOOL do_load_from_moniker_hack(nsChannel *This) { - PRBool b = FALSE; + nsACString scheme_str; + nsresult nsres; + BOOL ret = TRUE; /* * We should always load the page from IMoniker, but Wine is not yet @@ -581,12 +583,18 @@ static BOOL do_load_from_moniker_hack(nsChannel *This) if(!This->channel) return TRUE; - /* Load about protocol from moniker */ - nsIWineURI_SchemeIs(This->uri, "about", &b); - if(b) - return TRUE; + nsACString_Init(&scheme_str, NULL); + nsres = nsIWineURI_GetScheme(This->uri, &scheme_str); - return FALSE; + if(NS_SUCCEEDED(nsres)) { + const char *scheme; + + nsACString_GetData(&scheme_str, &scheme, NULL); + ret = !strcmp(scheme, "wine"); + } + + nsACString_Finish(&scheme_str); + return ret; } static HRESULT create_mon_for_nschannel(nsChannel *channel, IMoniker **mon)