[http] Use a copy of nsHttpConnectionInfo.

master
Fedor 2020-11-26 05:42:14 +02:00
parent 8391e57b27
commit c06c3fab9b
2 changed files with 8 additions and 7 deletions

View File

@ -3540,8 +3540,9 @@ Http2Session::CreateTunnel(nsHttpTransaction *trans,
// transaction so that an auth created by the connect can be mappped
// to the correct security callbacks
RefPtr<nsHttpConnectionInfo> clone(ci->Clone());
RefPtr<SpdyConnectTransaction> connectTrans =
new SpdyConnectTransaction(ci, aCallbacks, trans->Caps(), trans, this);
new SpdyConnectTransaction(clone, aCallbacks, trans->Caps(), trans, this);
AddStream(connectTrans, nsISupportsPriority::PRIORITY_NORMAL, false, nullptr);
Http2Stream *tunnel = mStreamTransactionHash.Get(connectTrans);
MOZ_ASSERT(tunnel);

View File

@ -2030,9 +2030,9 @@ nsHttpTransaction::DisableSpdy()
{
mCaps |= NS_HTTP_DISALLOW_SPDY;
if (mConnInfo) {
// This is our clone of the connection info, not the persistent one that
// is owned by the connection manager, so we're safe to change this here
mConnInfo->SetNoSpdy(true);
RefPtr<nsHttpConnectionInfo> connInfo = mConnInfo->Clone();
connInfo->SetNoSpdy(true);
mConnInfo.swap(connInfo);
}
}