Title: [211815] trunk/Source/WebCore
- Revision
- 211815
- Author
- carlo...@webkit.org
- Date
- 2017-02-07 10:04:50 -0800 (Tue, 07 Feb 2017)
Log Message
[GStreamer] Deadlock when media player is destroyed
https://bugs.webkit.org/show_bug.cgi?id=167861
Reviewed by Michael Catanzaro.
The problem is that we are calling notifyOne() for the draw mutex without taking the lock.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::repaint):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (211814 => 211815)
--- trunk/Source/WebCore/ChangeLog 2017-02-07 17:59:16 UTC (rev 211814)
+++ trunk/Source/WebCore/ChangeLog 2017-02-07 18:04:50 UTC (rev 211815)
@@ -1,3 +1,15 @@
+2017-02-07 Carlos Garcia Campos <cgar...@igalia.com>
+
+ [GStreamer] Deadlock when media player is destroyed
+ https://bugs.webkit.org/show_bug.cgi?id=167861
+
+ Reviewed by Michael Catanzaro.
+
+ The problem is that we are calling notifyOne() for the draw mutex without taking the lock.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
+ (WebCore::MediaPlayerPrivateGStreamerBase::repaint):
+
2017-02-07 Zan Dobersek <zdober...@igalia.com>
MediaSourceClientGStreamerMSE: wrap FastMalloc-ed memory into pipeline-bound GstBuffers
Modified: trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (211814 => 211815)
--- trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2017-02-07 17:59:16 UTC (rev 211814)
+++ trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp 2017-02-07 18:04:50 UTC (rev 211815)
@@ -711,6 +711,7 @@
if (m_renderingCanBeAccelerated && client()) {
client()->setPlatformLayerNeedsDisplay();
#if USE(GSTREAMER_GL)
+ LockHolder lock(m_drawMutex);
m_drawCondition.notifyOne();
#endif
return;
@@ -720,6 +721,7 @@
m_player->repaint();
#if USE(GSTREAMER_GL) || USE(COORDINATED_GRAPHICS_THREADED)
+ LockHolder lock(m_drawMutex);
m_drawCondition.notifyOne();
#endif
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes