Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4b6c349e5ea44901d3fab98f14cb1f6a901c512e
      
https://github.com/WebKit/WebKit/commit/4b6c349e5ea44901d3fab98f14cb1f6a901c512e
  Author: Jean-Yves Avenard <[email protected]>
  Date:   2026-06-24 (Wed, 24 Jun 2026)

  Changed paths:
    A LayoutTests/media/media-source/media-source-seek-complete-gpu.html
    M LayoutTests/platform/glib/TestExpectations
    A 
LayoutTests/platform/mac/media/media-source/media-source-seek-complete-gpu-expected.txt
    M Source/WebCore/Modules/mediasource/MediaSource.h
    M Source/WebCore/platform/graphics/MediaSourcePrivate.h
    M Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.cpp
    M Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.h
    M Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.messages.in
    M Source/WebKit/Scripts/webkit/messages.py
    M Source/WebKit/Shared/WebCoreArgumentCodersMedia.serialization.in
    M Source/WebKit/WebProcess/GPU/media/MediaSourcePrivateRemote.cpp
    M Source/WebKit/WebProcess/GPU/media/MediaSourcePrivateRemote.h

  Log Message:
  -----------
  [315691@main] With MediaContainment off, YouTube seeking never completes
https://bugs.webkit.org/show_bug.cgi?id=317728
rdar://180481278

Reviewed by Youenn Fablet.

In 315691@main, we moved the checks for buffered ranges into the 
MediaSourcePrivate.
All those methods were gated on the readyState being everything but "Closed".
However, when the MediaSourcePrivate lives in the GPU process, the readyState
was never set and kept its initial value: "Closed". This issue didn't matter
before because nothing on the GPU process side relied on the readyState value.

We plumb the readyState update.

MediaSourcePrivateRemote & Co should be removed ; it's becoming too hard
to maintain now that MediaContainment is the default and the GPU process
path is no longer properly tested.

Test: media/media-source/media-source-seek-complete-gpu.html

* LayoutTests/media/media-source/media-source-seek-complete-gpu.html: Added.
* 
LayoutTests/platform/mac/media/media-source/media-source-seek-complete-gpu-expected.txt:
 Added.
* Source/WebCore/Modules/mediasource/MediaSource.h: MediaSource.h isn't a 
global header and can't be used from WebKit.
so we move the readyState enum to MediaSourcePrivate.h.
* Source/WebCore/platform/graphics/MediaSourcePrivate.h:
* Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.cpp:
(WebKit::RemoteMediaSourceProxy::setReadyState):
* Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.h:
* Source/WebKit/GPUProcess/media/RemoteMediaSourceProxy.messages.in:
* Source/WebKit/Scripts/webkit/messages.py:
(headers_for_type):
* Source/WebKit/Shared/WebCoreArgumentCodersMedia.serialization.in:
* Source/WebKit/WebProcess/GPU/media/MediaSourcePrivateRemote.cpp:
(WebKit::MediaSourcePrivateRemote::setReadyState):
* Source/WebKit/WebProcess/GPU/media/MediaSourcePrivateRemote.h:

Canonical link: https://commits.webkit.org/315739@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to