Title: [281267] branches/safari-612.1.29-branch/Source/WebCore
Revision
281267
Author
repst...@apple.com
Date
2021-08-19 13:42:25 -0700 (Thu, 19 Aug 2021)

Log Message

Revert "RTCPeerConnection::m_transceiverSet does not need to be allocated separately from its RTCPeerConnection"

This reverts commit r281231.

Modified Paths

Diff

Modified: branches/safari-612.1.29-branch/Source/WebCore/ChangeLog (281266 => 281267)


--- branches/safari-612.1.29-branch/Source/WebCore/ChangeLog	2021-08-19 20:42:22 UTC (rev 281266)
+++ branches/safari-612.1.29-branch/Source/WebCore/ChangeLog	2021-08-19 20:42:25 UTC (rev 281267)
@@ -1,23 +1,3 @@
-2021-08-19  Youenn Fablet  <you...@apple.com>
-
-        RTCPeerConnection::m_transceiverSet does not need to be allocated separately from its RTCPeerConnection
-        https://bugs.webkit.org/show_bug.cgi?id=229183
-
-        Reviewed by Eric Carlson.
-
-        No change of behavior.
-
-        * Modules/mediastream/RTCPeerConnection.cpp:
-        (WebCore::RTCPeerConnection::addTrack):
-        (WebCore::RTCPeerConnection::removeTrack):
-        (WebCore::RTCPeerConnection::getStats):
-        (WebCore::RTCPeerConnection::doClose):
-        (WebCore::RTCPeerConnection::addInternalTransceiver):
-        (WebCore::RTCPeerConnection::getSenders const):
-        (WebCore::RTCPeerConnection::getReceivers const):
-        (WebCore::RTCPeerConnection::getTransceivers const):
-        * Modules/mediastream/RTCPeerConnection.h:
-
 2021-08-19  Carlos Garcia Campos  <cgar...@igalia.com>
 
         document.hasFocus() returns true for unfocused pages

Modified: branches/safari-612.1.29-branch/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp (281266 => 281267)


--- branches/safari-612.1.29-branch/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp	2021-08-19 20:42:22 UTC (rev 281266)
+++ branches/safari-612.1.29-branch/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp	2021-08-19 20:42:25 UTC (rev 281267)
@@ -134,7 +134,7 @@
     if (isClosed())
         return Exception { InvalidStateError };
 
-    for (auto& transceiver : m_transceiverSet.list()) {
+    for (auto& transceiver : m_transceiverSet->list()) {
         if (transceiver->sender().trackId() == track->id())
             return Exception { InvalidAccessError };
     }
@@ -158,7 +158,7 @@
 
     bool shouldAbort = true;
     RTCRtpTransceiver* senderTransceiver = nullptr;
-    for (auto& transceiver : m_transceiverSet.list()) {
+    for (auto& transceiver : m_transceiverSet->list()) {
         if (&sender == &transceiver->sender()) {
             senderTransceiver = transceiver.get();
             shouldAbort = sender.isStopped() || !sender.track();
@@ -465,7 +465,7 @@
 void RTCPeerConnection::getStats(MediaStreamTrack* selector, Ref<DeferredPromise>&& promise)
 {
     if (selector) {
-        for (auto& transceiver : m_transceiverSet.list()) {
+        for (auto& transceiver : m_transceiverSet->list()) {
             if (transceiver->sender().track() == selector) {
                 m_backend->getStats(transceiver->sender(), WTFMove(promise));
                 return;
@@ -513,7 +513,7 @@
     m_iceConnectionState = RTCIceConnectionState::Closed;
     m_signalingState = RTCSignalingState::Closed;
 
-    for (auto& transceiver : m_transceiverSet.list()) {
+    for (auto& transceiver : m_transceiverSet->list()) {
         transceiver->stop();
         transceiver->sender().stop();
         transceiver->receiver().stop();
@@ -610,7 +610,7 @@
 void RTCPeerConnection::addInternalTransceiver(Ref<RTCRtpTransceiver>&& transceiver)
 {
     transceiver->setConnection(*this);
-    m_transceiverSet.append(WTFMove(transceiver));
+    m_transceiverSet->append(WTFMove(transceiver));
 }
 
 void RTCPeerConnection::setSignalingState(RTCSignalingState newState)
@@ -777,19 +777,19 @@
 Vector<std::reference_wrapper<RTCRtpSender>> RTCPeerConnection::getSenders() const
 {
     m_backend->collectTransceivers();
-    return m_transceiverSet.senders();
+    return m_transceiverSet->senders();
 }
 
 Vector<std::reference_wrapper<RTCRtpReceiver>> RTCPeerConnection::getReceivers() const
 {
     m_backend->collectTransceivers();
-    return m_transceiverSet.receivers();
+    return m_transceiverSet->receivers();
 }
 
 const Vector<RefPtr<RTCRtpTransceiver>>& RTCPeerConnection::getTransceivers() const
 {
     m_backend->collectTransceivers();
-    return m_transceiverSet.list();
+    return m_transceiverSet->list();
 }
 
 void RTCPeerConnection::chainOperation(Ref<DeferredPromise>&& promise, Function<void(Ref<DeferredPromise>&&)>&& operation)
@@ -855,7 +855,7 @@
 
 void RTCPeerConnection::updateTransceiverTransports()
 {
-    for (auto& transceiver : m_transceiverSet.list()) {
+    for (auto& transceiver : m_transceiverSet->list()) {
         auto& sender = transceiver->sender();
         if (auto* senderBackend = sender.backend())
             sender.setTransport(getOrCreateDtlsTransport(senderBackend->dtlsTransportBackend()));

Modified: branches/safari-612.1.29-branch/Source/WebCore/Modules/mediastream/RTCPeerConnection.h (281266 => 281267)


--- branches/safari-612.1.29-branch/Source/WebCore/Modules/mediastream/RTCPeerConnection.h	2021-08-19 20:42:22 UTC (rev 281266)
+++ branches/safari-612.1.29-branch/Source/WebCore/Modules/mediastream/RTCPeerConnection.h	2021-08-19 20:42:25 UTC (rev 281267)
@@ -142,7 +142,7 @@
     Vector<std::reference_wrapper<RTCRtpReceiver>> getReceivers() const;
     const Vector<RefPtr<RTCRtpTransceiver>>& getTransceivers() const;
 
-    const Vector<RefPtr<RTCRtpTransceiver>>& currentTransceivers() const { return m_transceiverSet.list(); }
+    const Vector<RefPtr<RTCRtpTransceiver>>& currentTransceivers() const { return m_transceiverSet->list(); }
 
     ExceptionOr<Ref<RTCRtpSender>> addTrack(Ref<MediaStreamTrack>&&, const Vector<std::reference_wrapper<MediaStream>>&);
     ExceptionOr<void> removeTrack(RTCRtpSender&);
@@ -243,7 +243,7 @@
     const void* m_logIdentifier;
 #endif
 
-    RtpTransceiverSet m_transceiverSet;
+    std::unique_ptr<RtpTransceiverSet> m_transceiverSet { std::unique_ptr<RtpTransceiverSet>(new RtpTransceiverSet()) };
 
     std::unique_ptr<PeerConnectionBackend> m_backend;
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to