Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1fc19c74dd82e8f75e5a55b6d7116ad4d21e9f0d
https://github.com/WebKit/WebKit/commit/1fc19c74dd82e8f75e5a55b6d7116ad4d21e9f0d
Author: Jean-Yves Avenard <[email protected]>
Date: 2026-04-21 (Tue, 21 Apr 2026)
Changed paths:
A
LayoutTests/media/media-source/media-source-seek-to-zero-then-play-expected.txt
A LayoutTests/media/media-source/media-source-seek-to-zero-then-play.html
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/platform/graphics/MediaSourcePrivate.cpp
M Source/WebCore/platform/graphics/MediaSourcePrivate.h
M
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm
Log Message:
-----------
[Regression 310415@main] linkedin.com: Videos stop playing after few seconds
and audio lost
https://bugs.webkit.org/show_bug.cgi?id=312859
rdar://174966899
Reviewed by Jer Noble.
MediaSourcePrivate::waitForTarget() sets m_reenqueuePending = true.
It was normally cleared by reenqueueMediaForTime(). However, when
prepareToSeek()
returned a non-indefinite time (meaning the synchronizer was already at the
target position),
continueSeek() took a fast path that called completeSeek() directly, skipping
reenqueueMediaForTime() entirely.
This left m_reenqueuePending stuck as true. Since
SourceBufferPrivate::provideMediaData()
bailed early when isReenqueuePending() was true, no new samples ever reached the
renderer after that point.
Test: media/media-source/media-source-seek-to-zero-then-play.html
*
LayoutTests/media/media-source/media-source-seek-to-zero-then-play-expected.txt:
Added.
* LayoutTests/media/media-source/media-source-seek-to-zero-then-play.html:
Added.
* Source/WebCore/platform/graphics/MediaSourcePrivate.cpp:
(WebCore::MediaSourcePrivate::waitForTarget):
* Source/WebCore/platform/graphics/MediaSourcePrivate.h:
*
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::continueSeek):
Canonical link: https://commits.webkit.org/311698@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications