Title: [278203] trunk/Source/WebCore
Revision
278203
Author
eric.carl...@apple.com
Date
2021-05-28 09:43:38 -0700 (Fri, 28 May 2021)

Log Message

[Cocoa] Return immediately when asked to paint an AVPlayer that hasn't reached HaveCurrentData
https://bugs.webkit.org/show_bug.cgi?id=226350
rdar://77910715

Reviewed by Jer Noble.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateLastPixelBuffer): Return immediately
if readyState < HaveCurrentData.
(WebCore::MediaPlayerPrivateAVFoundationObjC::videoOutputHasAvailableFrame): Ditto.
(WebCore::MediaPlayerPrivateAVFoundationObjC::updateLastImage): Ditto.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (278202 => 278203)


--- trunk/Source/WebCore/ChangeLog	2021-05-28 16:39:42 UTC (rev 278202)
+++ trunk/Source/WebCore/ChangeLog	2021-05-28 16:43:38 UTC (rev 278203)
@@ -1,3 +1,17 @@
+2021-05-28  Eric Carlson  <eric.carl...@apple.com>
+
+        [Cocoa] Return immediately when asked to paint an AVPlayer that hasn't reached HaveCurrentData
+        https://bugs.webkit.org/show_bug.cgi?id=226350
+        rdar://77910715
+
+        Reviewed by Jer Noble.
+
+        * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+        (WebCore::MediaPlayerPrivateAVFoundationObjC::updateLastPixelBuffer): Return immediately
+        if readyState < HaveCurrentData.
+        (WebCore::MediaPlayerPrivateAVFoundationObjC::videoOutputHasAvailableFrame): Ditto.
+        (WebCore::MediaPlayerPrivateAVFoundationObjC::updateLastImage): Ditto.
+
 2021-05-28  Devin Rousso  <drou...@apple.com>
 
         [Modern Media Controls] put the localized information for tracks first if the track is not in the user's preferred language

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm (278202 => 278203)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm	2021-05-28 16:39:42 UTC (rev 278202)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm	2021-05-28 16:43:38 UTC (rev 278203)
@@ -2408,7 +2408,7 @@
 
 bool MediaPlayerPrivateAVFoundationObjC::updateLastPixelBuffer()
 {
-    if (!m_avPlayerItem)
+    if (!m_avPlayerItem || readyState() < MediaPlayer::ReadyState::HaveCurrentData)
         return false;
 
     if (!m_videoOutput)
@@ -2431,7 +2431,7 @@
 
 bool MediaPlayerPrivateAVFoundationObjC::videoOutputHasAvailableFrame()
 {
-    if (!m_avPlayerItem)
+    if (!m_avPlayerItem || readyState() < MediaPlayer::ReadyState::HaveCurrentData)
         return false;
 
     if (m_lastImage)
@@ -2445,7 +2445,7 @@
 
 void MediaPlayerPrivateAVFoundationObjC::updateLastImage(UpdateType type)
 {
-    if (!m_avPlayerItem)
+    if (!m_avPlayerItem || readyState() < MediaPlayer::ReadyState::HaveCurrentData)
         return;
 
     if (type == UpdateType::UpdateSynchronously && !m_lastImage && !videoOutputHasAvailableFrame())
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to