Commit c4ae3143 authored by Jacek Caban's avatar Jacek Caban Committed by Alexandre Julliard

mshtml: Use IUri in nsIURI::Equals implementation.

parent f8690a6b
...@@ -1971,25 +1971,28 @@ static nsresult NSAPI nsURI_SetPath(nsIURL *iface, const nsACString *aPath) ...@@ -1971,25 +1971,28 @@ static nsresult NSAPI nsURI_SetPath(nsIURL *iface, const nsACString *aPath)
static nsresult NSAPI nsURI_Equals(nsIURL *iface, nsIURI *other, PRBool *_retval) static nsresult NSAPI nsURI_Equals(nsIURL *iface, nsIURI *other, PRBool *_retval)
{ {
nsWineURI *This = NSURI_THIS(iface); nsWineURI *This = NSURI_THIS(iface);
nsWineURI *wine_uri; nsWineURI *other_obj;
nsresult nsres; nsresult nsres;
HRESULT hres;
TRACE("(%p)->(%p %p)\n", This, other, _retval); TRACE("(%p)->(%p %p)\n", This, other, _retval);
if(This->nsuri) nsres = nsIURI_QueryInterface(other, &IID_nsWineURI, (void**)&other_obj);
return nsIURI_Equals(This->nsuri, other, _retval);
nsres = nsIURI_QueryInterface(other, &IID_nsWineURI, (void**)&wine_uri);
if(NS_FAILED(nsres)) { if(NS_FAILED(nsres)) {
TRACE("Could not get nsWineURI interface\n"); TRACE("Could not get nsWineURI interface\n");
*_retval = FALSE; *_retval = FALSE;
return NS_OK; return NS_OK;
} }
*_retval = wine_uri->wine_url && !UrlCompareW(This->wine_url, wine_uri->wine_url, TRUE); if(ensure_uri(This) && ensure_uri(other_obj)) {
nsIURI_Release(NSURI(wine_uri)); hres = IUri_IsEqual(This->uri, other_obj->uri, _retval);
nsres = SUCCEEDED(hres) ? NS_OK : NS_ERROR_FAILURE;
}else {
nsres = NS_ERROR_UNEXPECTED;
}
return NS_OK; nsIURI_Release(NSURI(other_obj));
return nsres;
} }
static nsresult NSAPI nsURI_SchemeIs(nsIURL *iface, const char *scheme, PRBool *_retval) static nsresult NSAPI nsURI_SchemeIs(nsIURL *iface, const char *scheme, PRBool *_retval)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment