mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1067346 - Fix "apply conversion" when channel is diverted to parent. r=jduell
This commit is contained in:
parent
47710df06a
commit
7adc5b3ce4
@ -611,9 +611,11 @@ HttpBaseChannel::DoApplyContentConversions(nsIStreamListener* aNextListener,
|
||||
nsISupports *aCtxt)
|
||||
{
|
||||
*aNewNextListener = nullptr;
|
||||
nsCOMPtr<nsIStreamListener> nextListener = aNextListener;
|
||||
if (!mResponseHead)
|
||||
if (!mResponseHead || ! aNextListener) {
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsCOMPtr<nsIStreamListener> nextListener = aNextListener;
|
||||
|
||||
LOG(("HttpBaseChannel::DoApplyContentConversions [this=%p]\n", this));
|
||||
|
||||
@ -681,7 +683,7 @@ HttpBaseChannel::DoApplyContentConversions(nsIStreamListener* aNextListener,
|
||||
}
|
||||
}
|
||||
*aNewNextListener = nextListener;
|
||||
NS_ADDREF(*aNewNextListener);
|
||||
NS_IF_ADDREF(*aNewNextListener);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
@ -326,17 +326,21 @@ HttpChannelChild::OnStartRequest(const nsresult& channelStatus,
|
||||
return;
|
||||
}
|
||||
|
||||
if (mResponseHead)
|
||||
SetCookie(mResponseHead->PeekHeader(nsHttp::Set_Cookie));
|
||||
|
||||
mSelfAddr = selfAddr;
|
||||
mPeerAddr = peerAddr;
|
||||
|
||||
if (mDivertingToParent) {
|
||||
mListener = nullptr;
|
||||
mListenerContext = nullptr;
|
||||
if (mLoadGroup) {
|
||||
mLoadGroup->RemoveRequest(this, nullptr, mStatus);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (mResponseHead)
|
||||
SetCookie(mResponseHead->PeekHeader(nsHttp::Set_Cookie));
|
||||
|
||||
nsCOMPtr<nsIStreamListener> listener;
|
||||
rv = DoApplyContentConversions(mListener, getter_AddRefs(listener),
|
||||
mListenerContext);
|
||||
@ -345,9 +349,6 @@ HttpChannelChild::OnStartRequest(const nsresult& channelStatus,
|
||||
} else if (listener) {
|
||||
mListener = listener;
|
||||
}
|
||||
|
||||
mSelfAddr = selfAddr;
|
||||
mPeerAddr = peerAddr;
|
||||
}
|
||||
|
||||
class TransportAndDataEvent : public ChannelEvent
|
||||
|
Loading…
Reference in New Issue
Block a user