[GStreamer][MSE] Pausing video sometimes causes skip to finish
authorcturner@igalia.com <cturner@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 24 Jun 2019 11:33:30 +0000 (11:33 +0000)
committercturner@igalia.com <cturner@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 24 Jun 2019 11:33:30 +0000 (11:33 +0000)
https://bugs.webkit.org/show_bug.cgi?id=197355

Reviewed by Philippe Normand.

Covered by existing tests.

* platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::currentMediaTime const):
Assuming that when m_eosPending is on and we're paused() that the
network resource is fully loaded and the end is reached is clearly
wrong. Whether this is now correct is unclear...

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@246731 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp

index b2465a7..2da96e0 100644 (file)
@@ -1,5 +1,20 @@
 2019-06-24  Charlie Turner  <cturner@igalia.com>
 
+        [GStreamer][MSE] Pausing video sometimes causes skip to finish
+        https://bugs.webkit.org/show_bug.cgi?id=197355
+
+        Reviewed by Philippe Normand.
+
+        Covered by existing tests.
+
+        * platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
+        (WebCore::MediaPlayerPrivateGStreamerMSE::currentMediaTime const):
+        Assuming that when m_eosPending is on and we're paused() that the
+        network resource is fully loaded and the end is reached is clearly
+        wrong. Whether this is now correct is unclear...
+
+2019-06-24  Charlie Turner  <cturner@igalia.com>
+
         [GStreamer] Volume level sometimes changes inappropriately
         https://bugs.webkit.org/show_bug.cgi?id=197358
 
index a88fc8b..4e9d19d 100644 (file)
@@ -758,7 +758,7 @@ MediaTime MediaPlayerPrivateGStreamerMSE::currentMediaTime() const
 {
     MediaTime position = MediaPlayerPrivateGStreamer::currentMediaTime();
 
-    if (m_eosPending && (paused() || (position >= durationMediaTime()))) {
+    if (m_eosPending && position >= durationMediaTime()) {
         if (m_networkState != MediaPlayer::Loaded) {
             m_networkState = MediaPlayer::Loaded;
             m_player->networkStateChanged();