[webkit-changes] [WebKit/WebKit] bda868: [GStreamer] Fix delayed dispatch of async task pos...

Enrique Ocaña González noreply at github.com
Thu Dec 28 01:55:08 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: bda86858ca813149fbfc74acc73169ce0ac7c30b
      https://github.com/WebKit/WebKit/commit/bda86858ca813149fbfc74acc73169ce0ac7c30b
  Author: Enrique Ocaña González <eocanha at igalia.com>
  Date:   2023-12-28 (Thu, 28 Dec 2023)

  Changed paths:
    M Source/WebCore/platform/AbortableTaskQueue.h
    M Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp

  Log Message:
  -----------
  [GStreamer] Fix delayed dispatch of async task post MediaPlayer destruction
https://bugs.webkit.org/show_bug.cgi?id=266715

Reviewed by Philippe Normand.

When the media player is destroyed, there can still be async tasks (from AbortableTaskQueue)
ongoing, some of them related to tracks. Those tasks should be aborted, because they depend
on objects that are no longer there.

This patch aborts all pending tasks on AbortableTaskQueue destruction and also unregisters
all pending callbacks from TrackPrivateBaseGStreamer.

See: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1231

Original author: "Vivek.A" <Vivek_Arumugam at comcast.com>

* Source/WebCore/platform/AbortableTaskQueue.h: Abort tasks on destruction.
* Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::disconnect): Disconnect handlers.

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




More information about the webkit-changes mailing list