Title: [233857] trunk/Source/WebCore
- Revision
- 233857
- Author
- cdu...@apple.com
- Date
- 2018-07-16 11:55:08 -0700 (Mon, 16 Jul 2018)
Log Message
Make sure LibWebRTCMediaEndpoint is always destroyed on the main thread
https://bugs.webkit.org/show_bug.cgi?id=187702
Reviewed by Youenn Fablet.
Make sure LibWebRTCMediaEndpoint is always constructed and destructed on the main thread since
it has a Timer data member and it would not be safe otherwise. LibWebRTCMediaEndpoint is
ThreadSafeRefCounted and frequently passed to other threads.
* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::LibWebRTCMediaEndpoint):
* Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (233856 => 233857)
--- trunk/Source/WebCore/ChangeLog 2018-07-16 18:52:22 UTC (rev 233856)
+++ trunk/Source/WebCore/ChangeLog 2018-07-16 18:55:08 UTC (rev 233857)
@@ -1,3 +1,18 @@
+2018-07-16 Chris Dumez <cdu...@apple.com>
+
+ Make sure LibWebRTCMediaEndpoint is always destroyed on the main thread
+ https://bugs.webkit.org/show_bug.cgi?id=187702
+
+ Reviewed by Youenn Fablet.
+
+ Make sure LibWebRTCMediaEndpoint is always constructed and destructed on the main thread since
+ it has a Timer data member and it would not be safe otherwise. LibWebRTCMediaEndpoint is
+ ThreadSafeRefCounted and frequently passed to other threads.
+
+ * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
+ (WebCore::LibWebRTCMediaEndpoint::LibWebRTCMediaEndpoint):
+ * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h:
+
2018-07-16 Sihui Liu <sihui_...@apple.com>
IndexedDB: closeAndDeleteDatabasesForOrigins should remove all databases for those origins
Modified: trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp (233856 => 233857)
--- trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp 2018-07-16 18:52:22 UTC (rev 233856)
+++ trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp 2018-07-16 18:55:08 UTC (rev 233857)
@@ -74,6 +74,7 @@
, m_logIdentifier(peerConnection.logIdentifier())
#endif
{
+ ASSERT(isMainThread());
ASSERT(client.factory());
}
Modified: trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h (233856 => 233857)
--- trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h 2018-07-16 18:52:22 UTC (rev 233856)
+++ trunk/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h 2018-07-16 18:55:08 UTC (rev 233857)
@@ -57,7 +57,7 @@
class RTCSessionDescription;
class LibWebRTCMediaEndpoint
- : public ThreadSafeRefCounted<LibWebRTCMediaEndpoint>
+ : public ThreadSafeRefCounted<LibWebRTCMediaEndpoint, WTF::DestructionThread::Main>
, private webrtc::PeerConnectionObserver
, private webrtc::RTCStatsCollectorCallback
#if !RELEASE_LOG_DISABLED
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes