diff --git a/mozilla/uriloader/base/nsURILoader.cpp b/mozilla/uriloader/base/nsURILoader.cpp index 5685801cec9..66f4c747d50 100644 --- a/mozilla/uriloader/base/nsURILoader.cpp +++ b/mozilla/uriloader/base/nsURILoader.cpp @@ -659,8 +659,14 @@ nsresult nsURILoader::SetupLoadCookie(nsISupports * aWindowContext, } // if we don't have a load cookie already } // if we have a cntListener - rv = loadCookie->QueryInterface(NS_GET_IID(nsIInterfaceRequestor), + // loadCookie may be null - for example, if popupWin is + // not a defined window. The following prevents a crash (Bug 32898) + if (loadCookie) { + rv = loadCookie->QueryInterface(NS_GET_IID(nsIInterfaceRequestor), (void**)aLoadCookie); + } else { + rv = NS_ERROR_UNEXPECTED; + } return rv; }