Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 60638d927b622cdabf91fa8993c6ce0afd5ebd36
      
https://github.com/WebKit/WebKit/commit/60638d927b622cdabf91fa8993c6ce0afd5ebd36
  Author: Philippe Normand <[email protected]>
  Date:   2026-03-02 (Mon, 02 Mar 2026)

  Changed paths:
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp

  Log Message:
  -----------
  [GStreamer][1.28] 
media/media-source/media-source-paint-after-display-none.html crashes
https://bugs.webkit.org/show_bug.cgi?id=308925

Reviewed by Xabier Rodriguez-Calvar.

In GStreamer 1.28 the gluploader negotiates a new kind of buffer pool with 
upstream when a software
video decoder is used, making use of the udmabuf subsystem on Linux platforms. 
With that allocator,
deep buffer copies attempted in ::flushCurrentBuffer() fail and the new sample 
doesn't have a valid
buffer, so that needs to be checked in ::paint() and in our VideoFrame 
implementation.

* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::paint):
* Source/WebCore/platform/graphics/gstreamer/VideoFrameGStreamer.cpp:
(WebCore::presentationTimeFromSample):
(WebCore::VideoFrameGStreamer::VideoFrameGStreamer):

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



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

Reply via email to