diff options
author | Moonchild <moonchild@palemoon.org> | 2021-01-29 14:55:20 +0000 |
---|---|---|
committer | Moonchild <moonchild@palemoon.org> | 2021-01-29 14:55:20 +0000 |
commit | 745254183c226e5db0caa566ad496d2f0192182e (patch) | |
tree | 467b282ce4e90dba6837dd9d631b6c9082463274 /netwerk/protocol/http/nsHttpTransaction.cpp | |
parent | c76214f0b54cf74b69d0fb4afa0d2eca2e898a98 (diff) | |
parent | e1daeef18312a0cb17eda6bed7f363d8748ed4a3 (diff) | |
download | UXP-745254183c226e5db0caa566ad496d2f0192182e.tar UXP-745254183c226e5db0caa566ad496d2f0192182e.tar.gz UXP-745254183c226e5db0caa566ad496d2f0192182e.tar.lz UXP-745254183c226e5db0caa566ad496d2f0192182e.tar.xz UXP-745254183c226e5db0caa566ad496d2f0192182e.zip |
Merge branch 'master' into release
Diffstat (limited to 'netwerk/protocol/http/nsHttpTransaction.cpp')
-rw-r--r-- | netwerk/protocol/http/nsHttpTransaction.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/netwerk/protocol/http/nsHttpTransaction.cpp b/netwerk/protocol/http/nsHttpTransaction.cpp index e7f3ca0ef..9c5895cb0 100644 --- a/netwerk/protocol/http/nsHttpTransaction.cpp +++ b/netwerk/protocol/http/nsHttpTransaction.cpp @@ -765,7 +765,10 @@ nsHttpTransaction::ReadSegments(nsAHttpSegmentReader *reader, if (!mConnected && !m0RTTInProgress) { mConnected = true; - mConnection->GetSecurityInfo(getter_AddRefs(mSecurityInfo)); + nsCOMPtr<nsISupports> info; + mConnection->GetSecurityInfo(getter_AddRefs(info)); + MutexAutoLock lock(mLock); + mSecurityInfo = std::move(info); } mDeferredSendProgress = false; @@ -1314,7 +1317,10 @@ nsHttpTransaction::Restart() seekable->Seek(nsISeekableStream::NS_SEEK_SET, 0); // clear old connection state... - mSecurityInfo = nullptr; + { + MutexAutoLock lock(mLock); + mSecurityInfo = nullptr; + } if (mConnection) { if (!mReuseOnRestart) { mConnection->DontReuse(); @@ -2489,7 +2495,10 @@ nsHttpTransaction::Finish0RTT(bool aRestart, bool aAlpnChanged /* ignored */) } else if (!mConnected) { // this is code that was skipped in ::ReadSegments while in 0RTT mConnected = true; - mConnection->GetSecurityInfo(getter_AddRefs(mSecurityInfo)); + nsCOMPtr<nsISupports> info; + mConnection->GetSecurityInfo(getter_AddRefs(info)); + MutexAutoLock lock(mLock); + mSecurityInfo = std::move(info); } return NS_OK; } |