Title: [239030] trunk/Source/WebCore
- Revision
- 239030
- Author
- [email protected]
- Date
- 2018-12-10 08:30:53 -0800 (Mon, 10 Dec 2018)
Log Message
MockLibWebRTCPeerConnectionFactory should isolate copy its test case
https://bugs.webkit.org/show_bug.cgi?id=192545
Reviewed by Eric Carlson.
Isolate copy the test case member so that it can be destroyed on another thread.
Covered by existing test that should no longer crash.
* testing/MockLibWebRTCPeerConnection.cpp:
(WebCore::useMockRTCPeerConnectionFactory):
(WebCore::MockLibWebRTCPeerConnectionFactory::MockLibWebRTCPeerConnectionFactory):
* testing/MockLibWebRTCPeerConnection.h:
(WebCore::MockLibWebRTCPeerConnectionFactory::create):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (239029 => 239030)
--- trunk/Source/WebCore/ChangeLog 2018-12-10 16:07:28 UTC (rev 239029)
+++ trunk/Source/WebCore/ChangeLog 2018-12-10 16:30:53 UTC (rev 239030)
@@ -1,3 +1,19 @@
+2018-12-10 Youenn Fablet <[email protected]>
+
+ MockLibWebRTCPeerConnectionFactory should isolate copy its test case
+ https://bugs.webkit.org/show_bug.cgi?id=192545
+
+ Reviewed by Eric Carlson.
+
+ Isolate copy the test case member so that it can be destroyed on another thread.
+ Covered by existing test that should no longer crash.
+
+ * testing/MockLibWebRTCPeerConnection.cpp:
+ (WebCore::useMockRTCPeerConnectionFactory):
+ (WebCore::MockLibWebRTCPeerConnectionFactory::MockLibWebRTCPeerConnectionFactory):
+ * testing/MockLibWebRTCPeerConnection.h:
+ (WebCore::MockLibWebRTCPeerConnectionFactory::create):
+
2018-12-09 Youenn Fablet <[email protected]>
Move capture manager from RealtimeMediaSourceCenter to capture factory
Modified: trunk/Source/WebCore/testing/MockLibWebRTCPeerConnection.cpp (239029 => 239030)
--- trunk/Source/WebCore/testing/MockLibWebRTCPeerConnection.cpp 2018-12-10 16:07:28 UTC (rev 239029)
+++ trunk/Source/WebCore/testing/MockLibWebRTCPeerConnection.cpp 2018-12-10 16:30:53 UTC (rev 239030)
@@ -66,7 +66,7 @@
auto& factory = getRealPeerConnectionFactory();
factory = provider->factory();
}
- provider->setPeerConnectionFactory(MockLibWebRTCPeerConnectionFactory::create(String(testCase)));
+ provider->setPeerConnectionFactory(MockLibWebRTCPeerConnectionFactory::create(testCase));
}
MockLibWebRTCPeerConnection::~MockLibWebRTCPeerConnection()
@@ -167,8 +167,8 @@
void SetLocalDescription(webrtc::SetSessionDescriptionObserver* observer, webrtc::SessionDescriptionInterface*) final { releaseInNetworkThread(*this, *observer); }
};
-MockLibWebRTCPeerConnectionFactory::MockLibWebRTCPeerConnectionFactory(String&& testCase)
- : m_testCase(WTFMove(testCase))
+MockLibWebRTCPeerConnectionFactory::MockLibWebRTCPeerConnectionFactory(const String& testCase)
+ : m_testCase(testCase.isolatedCopy())
{
}
Modified: trunk/Source/WebCore/testing/MockLibWebRTCPeerConnection.h (239029 => 239030)
--- trunk/Source/WebCore/testing/MockLibWebRTCPeerConnection.h 2018-12-10 16:07:28 UTC (rev 239029)
+++ trunk/Source/WebCore/testing/MockLibWebRTCPeerConnection.h 2018-12-10 16:30:53 UTC (rev 239030)
@@ -235,10 +235,10 @@
class MockLibWebRTCPeerConnectionFactory : public webrtc::PeerConnectionFactoryInterface {
public:
- static rtc::scoped_refptr<webrtc::PeerConnectionFactoryInterface> create(String&& testCase) { return new rtc::RefCountedObject<MockLibWebRTCPeerConnectionFactory>(WTFMove(testCase)); }
+ static rtc::scoped_refptr<webrtc::PeerConnectionFactoryInterface> create(const String& testCase) { return new rtc::RefCountedObject<MockLibWebRTCPeerConnectionFactory>(testCase); }
protected:
- MockLibWebRTCPeerConnectionFactory(String&&);
+ explicit MockLibWebRTCPeerConnectionFactory(const String&);
private:
rtc::scoped_refptr<webrtc::PeerConnectionInterface> CreatePeerConnection(const webrtc::PeerConnectionInterface::RTCConfiguration&, webrtc::PeerConnectionDependencies) final;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes