diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c index 3517a27a42a..ca269fc7da9 100644 --- a/dlls/mshtml/nsio.c +++ b/dlls/mshtml/nsio.c @@ -1533,29 +1533,28 @@ static nsresult NSAPI nsURI_SchemeIs(nsIWineURI *iface, const char *scheme, PRBo static nsresult NSAPI nsURI_Clone(nsIWineURI *iface, nsIURI **_retval) { nsURI *This = NSURI_THIS(iface); + nsIURI *nsuri = NULL; + nsIWineURI *wine_uri; + nsresult nsres; TRACE("(%p)->(%p)\n", This, _retval); if(This->uri) { - nsIURI *uri; - nsIWineURI *wine_uri; - nsresult nsres; - - nsres = nsIURI_Clone(This->uri, &uri); + nsres = nsIURI_Clone(This->uri, &nsuri); if(NS_FAILED(nsres)) { WARN("Clone failed: %08x\n", nsres); return nsres; } + } - nsres = create_uri(uri, This->container, &wine_uri); - *_retval = (nsIURI*)wine_uri; - if(NS_SUCCEEDED(nsres)) - return nsIWineURI_SetWineURL(wine_uri, This->wine_url); + nsres = create_uri(nsuri, This->container, &wine_uri); + if(NS_FAILED(nsres)) { + WARN("create_uri failed: %08x\n", nsres); return nsres; } - FIXME("default action not implemented\n"); - return NS_ERROR_NOT_IMPLEMENTED; + *_retval = (nsIURI*)wine_uri; + return nsIWineURI_SetWineURL(wine_uri, This->wine_url); } static nsresult NSAPI nsURI_Resolve(nsIWineURI *iface, const nsACString *arelativePath,