summaryrefslogtreecommitdiffstats
path: root/dom/cache/StreamList.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dom/cache/StreamList.cpp')
-rw-r--r--dom/cache/StreamList.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/dom/cache/StreamList.cpp b/dom/cache/StreamList.cpp
index cbce695b60..00dd3b585f 100644
--- a/dom/cache/StreamList.cpp
+++ b/dom/cache/StreamList.cpp
@@ -136,13 +136,9 @@ void StreamList::CloseAll() {
NS_ASSERT_OWNINGTHREAD(StreamList);
if (mStreamControl && mStreamControl->CanSend()) {
- auto* streamControl = std::exchange(mStreamControl, nullptr);
-
- streamControl->CloseAll();
-
- mStreamControl = std::exchange(streamControl, nullptr);
-
- mStreamControl->Shutdown();
+ // CloseAll will kick off everything needed for shutdown.
+ // mStreamControl may go away immediately or async.
+ mStreamControl->CloseAll();
} else {
// We cannot interact with the child, let's just clear our lists of
// streams to unblock shutdown.