diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c index 3c4b04e934c..122b5993d41 100644 --- a/dlls/mshtml/nsio.c +++ b/dlls/mshtml/nsio.c @@ -636,7 +636,7 @@ static nsresult NSAPI nsChannel_AsyncOpen(nsIHttpChannel *iface, nsIStreamListen return WINE_NS_LOAD_FROM_MONIKER; } - }else { + }else if(container->doc) { BOOL cont = before_async_open(This, container); nsIWebBrowserChrome_Release(NSWBCHROME(container)); @@ -644,6 +644,11 @@ static nsresult NSAPI nsChannel_AsyncOpen(nsIHttpChannel *iface, nsIStreamListen TRACE("canceled\n"); return NS_ERROR_UNEXPECTED; } + }else { + nsIWebBrowserChrome_Release(NSWBCHROME(container)); + return This->channel + ? nsIChannel_AsyncOpen(This->channel, aListener, aContext) + : NS_ERROR_UNEXPECTED; } }