diff --git a/mozilla/camino/src/embedding/CHBrowserListener.mm b/mozilla/camino/src/embedding/CHBrowserListener.mm index ecc53310cea..45f2596a136 100644 --- a/mozilla/camino/src/embedding/CHBrowserListener.mm +++ b/mozilla/camino/src/embedding/CHBrowserListener.mm @@ -600,7 +600,7 @@ NS_IMETHODIMP CHBrowserListener::OnLocationChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsIURI *aLocation) { - if (!aLocation || !aWebProgress || !aRequest) + if (!aLocation || !aWebProgress) return NS_ERROR_FAILURE; // only pay attention to location change for our nsIDOMWindow @@ -610,9 +610,13 @@ CHBrowserListener::OnLocationChange(nsIWebProgress *aWebProgress, nsIRequest *aR if (windowForProgress != ourWindow) return NS_OK; - nsresult requestStatus = NS_OK; - aRequest->GetStatus(&requestStatus); - BOOL requestOK = NS_SUCCEEDED(requestStatus); + BOOL requestOK = YES; + if (aRequest) // aRequest can be null (e.g. for relative anchors) + { + nsresult requestStatus = NS_OK; + aRequest->GetStatus(&requestStatus); + requestOK = NS_SUCCEEDED(requestStatus); + } nsCAutoString spec; aLocation->GetSpec(spec);