diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-07-18 17:52:46 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-07-18 17:52:46 +0200 |
commit | 66fae1d81013a2321e7d607a426f834a01b847ce (patch) | |
tree | 8d32a121bee3f2952047e719c18bcd015f1257e4 /netwerk/protocol/http/nsHttpConnectionMgr.cpp | |
parent | 2539ce925195a9524521c5d87fd3441d964d03d3 (diff) | |
download | UXP-66fae1d81013a2321e7d607a426f834a01b847ce.tar UXP-66fae1d81013a2321e7d607a426f834a01b847ce.tar.gz UXP-66fae1d81013a2321e7d607a426f834a01b847ce.tar.lz UXP-66fae1d81013a2321e7d607a426f834a01b847ce.tar.xz UXP-66fae1d81013a2321e7d607a426f834a01b847ce.zip |
Implement a threadsafe & revised version of http2PushedStream.
Diffstat (limited to 'netwerk/protocol/http/nsHttpConnectionMgr.cpp')
-rw-r--r-- | netwerk/protocol/http/nsHttpConnectionMgr.cpp | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/netwerk/protocol/http/nsHttpConnectionMgr.cpp b/netwerk/protocol/http/nsHttpConnectionMgr.cpp index 907f33436..28df405ad 100644 --- a/netwerk/protocol/http/nsHttpConnectionMgr.cpp +++ b/netwerk/protocol/http/nsHttpConnectionMgr.cpp @@ -1819,13 +1819,18 @@ nsHttpConnectionMgr::ProcessNewTransaction(nsHttpTransaction *trans) trans->SetPendingTime(); - Http2PushedStream *pushedStream = trans->GetPushedStream(); - if (pushedStream) { - LOG((" ProcessNewTransaction %p tied to h2 session push %p\n", - trans, pushedStream->Session())); - return pushedStream->Session()-> - AddStream(trans, trans->Priority(), false, nullptr) ? - NS_OK : NS_ERROR_UNEXPECTED; + RefPtr<Http2PushedStreamWrapper> pushedStreamWrapper = + trans->GetPushedStream(); + if (pushedStreamWrapper) { + Http2PushedStream* pushedStream = pushedStreamWrapper->GetStream(); + if (pushedStream) { + LOG((" ProcessNewTransaction %p tied to h2 session push %p\n", trans, + pushedStream->Session())); + return pushedStream->Session()->AddStream(trans, trans->Priority(), false, + nullptr) + ? NS_OK + : NS_ERROR_UNEXPECTED; + } } nsresult rv = NS_OK; |