bug 910518 - check httpchannel for listener release on redirect callback r=jduell

--HG--
extra : rebase_source : 36a8adb0f863f01576b0991f10a0252e708f49e2
This commit is contained in:
Patrick McManus 2013-09-05 16:20:15 -04:00
Родитель 210ba12d7c
Коммит 6b4807d182
1 изменённых файлов: 13 добавлений и 3 удалений

Просмотреть файл

@ -1005,8 +1005,14 @@ nsHttpChannel::CallOnStartRequest()
}
LOG((" calling mListener->OnStartRequest\n"));
nsresult rv = mListener->OnStartRequest(this, mListenerContext);
if (NS_FAILED(rv)) return rv;
nsresult rv;
if (mListener) {
nsresult rv = mListener->OnStartRequest(this, mListenerContext);
if (NS_FAILED(rv))
return rv;
} else {
NS_WARNING("OnStartRequest skipped because of null listener");
}
// install stream converter if required
rv = ApplyContentConversions();
@ -5194,7 +5200,11 @@ nsHttpChannel::OnStopRequest(nsIRequest *request, nsISupports *ctxt, nsresult st
MOZ_ASSERT(NS_FAILED(status), "should have a failure code here");
// NOTE: since we have a failure status, we can ignore the return
// value from onStartRequest.
mListener->OnStartRequest(this, mListenerContext);
if (mListener) {
mListener->OnStartRequest(this, mListenerContext);
} else {
NS_WARNING("OnStartRequest skipped because of null listener");
}
}
// if this transaction has been replaced, then bail.