Module: wine Branch: refs/heads/master Commit: 76d8d022ca94a2c0dd9c2ded4f67244b1351b2e6 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=76d8d022ca94a2c0dd9c2ded...
Author: Jacek Caban jacek@codeweavers.com Date: Thu Jun 22 16:09:29 2006 +0200
mshtml: Inherit NSContainer in NewURI.
---
dlls/mshtml/nsio.c | 20 +++++++++++++++++++- 1 files changed, 19 insertions(+), 1 deletions(-)
diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c index c3269fc..c465154 100644 --- a/dlls/mshtml/nsio.c +++ b/dlls/mshtml/nsio.c @@ -1377,6 +1377,7 @@ static nsresult NSAPI nsIOService_NewURI const char *aOriginCharset, nsIURI *aBaseURI, nsIURI **_retval) { const char *spec = NULL; + NSContainer *nscontainer = NULL; nsIURI *uri; PRBool is_javascript = FALSE; nsresult nsres; @@ -1416,7 +1417,24 @@ static nsresult NSAPI nsIOService_NewURI return NS_OK; }
- return create_uri(uri, NULL, _retval); + if(aBaseURI) { + nsIWineURI *wine_uri; + + nsres = nsIURI_QueryInterface(aBaseURI, &IID_nsIWineURI, (void**)&wine_uri); + if(NS_SUCCEEDED(nsres)) { + nsIWineURI_GetNSContainer(wine_uri, &nscontainer); + nsIWineURI_Release(wine_uri); + }else { + ERR("Could not get nsIWineURI: %08lx\n", nsres); + } + } + + nsres = create_uri(uri, nscontainer, _retval); + + if(nscontainer) + nsIWebBrowserChrome_Release(NSWBCHROME(nscontainer)); + + return nsres; }
static nsresult NSAPI nsIOService_NewFileURI(nsIIOService *iface, nsIFile *aFile,