Title: [280589] trunk/Source/WebCore
Revision
280589
Author
[email protected]
Date
2021-08-03 06:15:40 -0700 (Tue, 03 Aug 2021)

Log Message

REGRESSION (r280531): multiple modern-media-controls tests have become flaky timeouts
https://bugs.webkit.org/show_bug.cgi?id=228714
<rdar://problem/81426715>

Reviewed by Eric Carlson.

Update preferredRenderingMode() to reflect what setUpVideoRendering() actually does: use
MediaRenderingToContext whenever possible. This will cause setUpVideoRendering() to be
called from updateStates() to create the context, even if the element has been marked as
!isVisible() by RenderVideo upon removal from the DOM.

Also, in renderingModeChanged(), don't attempt to deduce whether scheduleUpdateStates()
should be called; just call it universally.

* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::preferredRenderingMode const):
(WebCore::MediaPlayerPrivateAVFoundation::renderingModeChanged):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (280588 => 280589)


--- trunk/Source/WebCore/ChangeLog	2021-08-03 09:10:21 UTC (rev 280588)
+++ trunk/Source/WebCore/ChangeLog	2021-08-03 13:15:40 UTC (rev 280589)
@@ -1,3 +1,23 @@
+2021-08-03  Jer Noble  <[email protected]>
+
+        REGRESSION (r280531): multiple modern-media-controls tests have become flaky timeouts
+        https://bugs.webkit.org/show_bug.cgi?id=228714
+        <rdar://problem/81426715>
+
+        Reviewed by Eric Carlson.
+
+        Update preferredRenderingMode() to reflect what setUpVideoRendering() actually does: use
+        MediaRenderingToContext whenever possible. This will cause setUpVideoRendering() to be
+        called from updateStates() to create the context, even if the element has been marked as
+        !isVisible() by RenderVideo upon removal from the DOM.
+
+        Also, in renderingModeChanged(), don't attempt to deduce whether scheduleUpdateStates()
+        should be called; just call it universally.
+
+        * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
+        (WebCore::MediaPlayerPrivateAVFoundation::preferredRenderingMode const):
+        (WebCore::MediaPlayerPrivateAVFoundation::renderingModeChanged):
+
 2021-08-03  Kimmo Kinnunen  <[email protected]>
 
         Crash in webgl/1.0.x/conformance/textures/misc/texture-with-flip-y-and-premultiply-alpha.html

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp (280588 => 280589)


--- trunk/Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp	2021-08-03 09:10:21 UTC (rev 280588)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp	2021-08-03 13:15:40 UTC (rev 280589)
@@ -105,7 +105,7 @@
 
 MediaPlayerPrivateAVFoundation::MediaRenderingMode MediaPlayerPrivateAVFoundation::preferredRenderingMode() const
 {
-    if (!m_visible || assetStatus() == MediaPlayerAVAssetStatusUnknown)
+    if (assetStatus() == MediaPlayerAVAssetStatusUnknown)
         return MediaRenderingNone;
 
     if (supportsAcceleratedRendering() && m_player->renderingCanBeAccelerated())
@@ -468,8 +468,7 @@
 
 void MediaPlayerPrivateAVFoundation::renderingModeChanged()
 {
-    if (m_delayingReadyState && m_cachedHasVideo && hasAvailableVideoFrame())
-        scheduleUpdateStates();
+    scheduleUpdateStates();
     m_player->renderingModeChanged();
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to