Changeset 260814 in webkit
- Timestamp:
- Apr 28, 2020 3:08:53 AM (4 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r260808 r260814 1 2020-04-28 Youenn Fablet <youenn@apple.com> 2 3 RTCPeerConnection should not remove its created remote MediaStream objects until getting close 4 https://bugs.webkit.org/show_bug.cgi?id=211070 5 6 Reviewed by Alex Christensen. 7 8 * webrtc/direction-change-expected.txt: Added. 9 * webrtc/direction-change.html: Added. 10 * webrtc/routines.js: 11 * webrtc/video-setDirection-expected.txt: 12 * webrtc/video-setDirection.html: 13 1 14 2020-04-27 Simon Fraser <simon.fraser@apple.com> 2 15 -
trunk/LayoutTests/webrtc/routines.js
r260364 r260814 77 77 console.log("addIceCandidate error: " + error) 78 78 assert_unreached(); 79 } 80 81 async function renegotiate(pc1, pc2) 82 { 83 let d = await pc1.createOffer(); 84 await pc1.setLocalDescription(d); 85 await pc2.setRemoteDescription(d); 86 d = await pc2.createAnswer(); 87 await pc1.setRemoteDescription(d); 88 await pc2.setLocalDescription(d); 79 89 } 80 90 -
trunk/LayoutTests/webrtc/video-setDirection-expected.txt
r240152 r260814 2 2 3 3 PASS Going from sendrecv to inactive and back to sendrecv 4 FAIL The MediaStream should remain the same assert_equals: expected object "[object MediaStream]" but got object "[object MediaStream]" 4 PASS The MediaStream should remain the same 5 5 -
trunk/LayoutTests/webrtc/video-setDirection.html
r240152 r260814 45 45 46 46 var pc1, pc2; 47 async function renegotiate()48 {49 let d = await pc1.createOffer();50 await pc1.setLocalDescription(d);51 await pc2.setRemoteDescription(d);52 d = await pc2.createAnswer();53 await pc1.setRemoteDescription(d);54 await pc2.setLocalDescription(d);55 }56 47 57 48 promise_test(async (t) => { … … 81 72 82 73 pc1.getTransceivers()[0].direction = "inactive"; 83 await renegotiate( );74 await renegotiate(pc1, pc2); 84 75 await promise; 85 76 … … 93 84 }); 94 85 95 await renegotiate( );86 await renegotiate(pc1, pc2); 96 87 video.srcObject = await streamPromise; 97 88 await promise; -
trunk/Source/WebCore/ChangeLog
r260813 r260814 1 2020-04-28 Youenn Fablet <youenn@apple.com> 2 3 RTCPeerConnection should not remove its created remote MediaStream objects until getting close 4 https://bugs.webkit.org/show_bug.cgi?id=211070 5 6 Reviewed by Alex Christensen. 7 8 Remove no longer needed code. 9 This aligns with the spec and Firefox implementation. 10 Test: webrtc/direction-change.html 11 12 * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp: 13 (WebCore::LibWebRTCMediaEndpoint::transceiverBackendFromSender): 14 * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h: 15 1 16 2020-04-28 Youenn Fablet <youenn@apple.com> 2 17 -
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp
r260813 r260814 482 482 } 483 483 484 void LibWebRTCMediaEndpoint::removeRemoteStream(webrtc::MediaStreamInterface& rtcStream)485 {486 bool removed = m_remoteStreamsById.remove(fromStdString(rtcStream.id()));487 ASSERT_UNUSED(removed, removed);488 }489 490 void LibWebRTCMediaEndpoint::OnRemoveStream(rtc::scoped_refptr<webrtc::MediaStreamInterface> stream)491 {492 callOnMainThread([protectedThis = makeRef(*this), stream = WTFMove(stream)] {493 if (protectedThis->isStopped())494 return;495 ASSERT(stream);496 protectedThis->removeRemoteStream(*stream.get());497 });498 }499 500 484 void LibWebRTCMediaEndpoint::OnTrack(rtc::scoped_refptr<webrtc::RtpTransceiverInterface> transceiver) 501 485 { -
trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h
r258326 r260814 123 123 // webrtc::PeerConnectionObserver API 124 124 void OnSignalingChange(webrtc::PeerConnectionInterface::SignalingState) final; 125 void OnRemoveStream(rtc::scoped_refptr<webrtc::MediaStreamInterface>) final;126 125 void OnDataChannel(rtc::scoped_refptr<webrtc::DataChannelInterface>) final; 127 126 void OnTrack(rtc::scoped_refptr<webrtc::RtpTransceiverInterface>) final; … … 140 139 void setRemoteSessionDescriptionSucceeded(); 141 140 void setRemoteSessionDescriptionFailed(ExceptionCode, const char*); 142 void removeRemoteStream(webrtc::MediaStreamInterface&);143 141 void newTransceiver(rtc::scoped_refptr<webrtc::RtpTransceiverInterface>&&); 144 142 void removeRemoteTrack(rtc::scoped_refptr<webrtc::RtpReceiverInterface>&&);
Note: See TracChangeset
for help on using the changeset viewer.