diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-07-21 23:05:59 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-07-22 04:53:44 +0200 |
commit | 17a4b4f6db96b04a62e54146d637b0e10a80acfa (patch) | |
tree | c84a4636793daa5098564e287c78f0cfd8de746b /netwerk/protocol/http/nsHttpConnectionMgr.cpp | |
parent | f6a282023ec220c7cf181276e88a36be2821b132 (diff) | |
download | UXP-17a4b4f6db96b04a62e54146d637b0e10a80acfa.tar UXP-17a4b4f6db96b04a62e54146d637b0e10a80acfa.tar.gz UXP-17a4b4f6db96b04a62e54146d637b0e10a80acfa.tar.lz UXP-17a4b4f6db96b04a62e54146d637b0e10a80acfa.tar.xz UXP-17a4b4f6db96b04a62e54146d637b0e10a80acfa.zip |
Implement a threadsafe & revised version of http2PushedStream.
This re-applies the patch for this with added typename declaration.
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 71c19a9ec..d402b4104 100644 --- a/netwerk/protocol/http/nsHttpConnectionMgr.cpp +++ b/netwerk/protocol/http/nsHttpConnectionMgr.cpp @@ -1827,13 +1827,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; |