Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
REGRESSION (274442@main): [ MacOS wk2 ] media/media-source/media-sour…
…ce-seek-complete.html is a flaky timeout https://bugs.webkit.org/show_bug.cgi?id=269814 rdar://123338097 Reviewed by Jer Noble. If a `currentTimeChanged` message between the GPUP and WP was mid-flight when a new seek operation was started it would have set the current time to a stale value, so the time would appear to go backward and the seek would never complete. Prior 274442@main it *usually* didn't matter as the HTMLMediaElement cached the seeked time and would partially hide the time going backward. Following this change however, the MediaPlayerPrivate became the time reference, and so issues with the time being wrong became more problematic. This issue could explain a series of intermittent failures we have seen ever since the MediaPlayer was moved to the GPUP, including several changes made to prevent the time from ever going backward. The explanation above likely explains on why we needed such workaround in the first place. Also, before 274442@main if a seek was pending, it would have always returned the seek time when querying MediaSource::currentTime; we changed it to return 0 whenever the MediaSource was closed. We return to the original behaviour. * LayoutTests/platform/mac-wk2/TestExpectations: * Source/WebCore/Modules/mediasource/MediaSource.cpp: (WebCore::MediaSource::currentTime const): * Source/WebKit/WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp: (WebKit::MediaPlayerPrivateRemote::playbackStateChanged): Add log. (WebKit::MediaPlayerPrivateRemote::currentTimeChanged): return early if currently seeking. Add log Canonical link: https://commits.webkit.org/275231@main
- Loading branch information