Title: [211862] releases/WebKitGTK/webkit-2.14/Source/WebCore
Revision
211862
Author
[email protected]
Date
2017-02-08 03:07:50 -0800 (Wed, 08 Feb 2017)

Log Message

Merge r211815 - [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: releases/WebKitGTK/webkit-2.14/Source/WebCore/ChangeLog (211861 => 211862)


--- releases/WebKitGTK/webkit-2.14/Source/WebCore/ChangeLog	2017-02-08 11:05:33 UTC (rev 211861)
+++ releases/WebKitGTK/webkit-2.14/Source/WebCore/ChangeLog	2017-02-08 11:07:50 UTC (rev 211862)
@@ -1,3 +1,15 @@
+2017-02-07  Carlos Garcia Campos  <[email protected]>
+
+        [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-06  Carlos Garcia Campos  <[email protected]>
 
         Overlay scrolling with iframe-s broken

Modified: releases/WebKitGTK/webkit-2.14/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp (211861 => 211862)


--- releases/WebKitGTK/webkit-2.14/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp	2017-02-08 11:05:33 UTC (rev 211861)
+++ releases/WebKitGTK/webkit-2.14/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp	2017-02-08 11:07:50 UTC (rev 211862)
@@ -526,6 +526,7 @@
     if (supportsAcceleratedRendering() && m_player->client().mediaPlayerRenderingCanBeAccelerated(m_player) && client()) {
         client()->setPlatformLayerNeedsDisplay();
 #if USE(GSTREAMER_GL)
+        LockHolder lock(m_drawMutex);
         m_drawCondition.notifyOne();
 #endif
         return;
@@ -535,6 +536,7 @@
     m_player->repaint();
 
 #if USE(GSTREAMER_GL) || USE(COORDINATED_GRAPHICS_THREADED)
+    LockHolder lock(m_drawMutex);
     m_drawCondition.notifyOne();
 #endif
 }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to