Title: [284957] branches/safari-612-branch/Source/WebKit
Revision
284957
Author
[email protected]
Date
2021-10-27 14:06:24 -0700 (Wed, 27 Oct 2021)

Log Message

Cherry-pick r284349. rdar://problem/81171560

    Use-after-move of m_sockets in NetworkRTCProvider::close()
    <https://webkit.org/b/231779>
    <rdar://problem/84278026>

    Reviewed by Youenn Fablet.

    * NetworkProcess/webrtc/NetworkRTCProvider.cpp:
    (WebKit::NetworkRTCProvider::close):
    - Replace WTFMove() with std::exchange() to make it clear that
      m_sockets will be emptied, then iterate on `sockets` to close
      them.  Update ASSERT() to check that no sockets were added
      to m_sockets during the loop.

    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@284349 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Modified Paths

Diff

Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (284956 => 284957)


--- branches/safari-612-branch/Source/WebKit/ChangeLog	2021-10-27 21:06:22 UTC (rev 284956)
+++ branches/safari-612-branch/Source/WebKit/ChangeLog	2021-10-27 21:06:24 UTC (rev 284957)
@@ -1,5 +1,40 @@
 2021-10-26  Russell Epstein  <[email protected]>
 
+        Cherry-pick r284349. rdar://problem/81171560
+
+    Use-after-move of m_sockets in NetworkRTCProvider::close()
+    <https://webkit.org/b/231779>
+    <rdar://problem/84278026>
+    
+    Reviewed by Youenn Fablet.
+    
+    * NetworkProcess/webrtc/NetworkRTCProvider.cpp:
+    (WebKit::NetworkRTCProvider::close):
+    - Replace WTFMove() with std::exchange() to make it clear that
+      m_sockets will be emptied, then iterate on `sockets` to close
+      them.  Update ASSERT() to check that no sockets were added
+      to m_sockets during the loop.
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@284349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2021-10-18  David Kilzer  <[email protected]>
+
+            Use-after-move of m_sockets in NetworkRTCProvider::close()
+            <https://webkit.org/b/231779>
+            <rdar://problem/84278026>
+
+            Reviewed by Youenn Fablet.
+
+            * NetworkProcess/webrtc/NetworkRTCProvider.cpp:
+            (WebKit::NetworkRTCProvider::close):
+            - Replace WTFMove() with std::exchange() to make it clear that
+              m_sockets will be emptied, then iterate on `sockets` to close
+              them.  Update ASSERT() to check that no sockets were added
+              to m_sockets during the loop.
+
+2021-10-26  Russell Epstein  <[email protected]>
+
         Cherry-pick r283797. rdar://problem/81171560
 
     Bind the number of WebRTC sockets opened per process

Modified: branches/safari-612-branch/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp (284956 => 284957)


--- branches/safari-612-branch/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp	2021-10-27 21:06:22 UTC (rev 284956)
+++ branches/safari-612-branch/Source/WebKit/NetworkProcess/webrtc/NetworkRTCProvider.cpp	2021-10-27 21:06:24 UTC (rev 284957)
@@ -126,10 +126,10 @@
     m_rtcMonitor.stopUpdating();
 
     callOnRTCNetworkThread([this]() {
-        auto sockets = WTFMove(m_sockets);
-        for (auto& socket : m_sockets)
+        auto sockets = std::exchange(m_sockets, { });
+        for (auto& socket : sockets)
             socket.second->close();
-        ASSERT(sockets.empty());
+        ASSERT(m_sockets.empty());
 #if PLATFORM(COCOA)
         m_attributedBundleIdentifiers.clear();
 #endif
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to