diff options
author | Edward Hervey <edward@centricular.com> | 2024-08-19 09:37:51 +0200 |
---|---|---|
committer | Backport Bot <gitlab-backport-bot@gstreamer-foundation.org> | 2024-08-19 10:40:07 +0100 |
commit | bfcd23db61be4dd85d74cc0689a2009e09828697 (patch) | |
tree | e2a03001ab79f0220eb3f4a0817f48f6275aca4d | |
parent | 97461dc47d74336ad2c9684c0e11797031100683 (diff) |
urisourcebin: Actually drop EOS on old-school pad switch
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7376>
-rw-r--r-- | subprojects/gst-plugins-base/gst/playback/gsturisourcebin.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/subprojects/gst-plugins-base/gst/playback/gsturisourcebin.c b/subprojects/gst-plugins-base/gst/playback/gsturisourcebin.c index d9c0d489c6..3c9a71c9ce 100644 --- a/subprojects/gst-plugins-base/gst/playback/gsturisourcebin.c +++ b/subprojects/gst-plugins-base/gst/playback/gsturisourcebin.c @@ -915,6 +915,7 @@ demux_pad_events (GstPad * pad, GstPadProbeInfo * info, OutputSlotInfo * slot) { GstURISourceBin *urisrc = slot->linked_info->urisrc; GstEvent *ev = GST_PAD_PROBE_INFO_EVENT (info); + GstPadProbeReturn ret = GST_PAD_PROBE_OK; GST_URI_SOURCE_BIN_LOCK (urisrc); @@ -926,7 +927,8 @@ demux_pad_events (GstPad * pad, GstPadProbeInfo * info, OutputSlotInfo * slot) GST_LOG_OBJECT (urisrc, "EOS on pad %" GST_PTR_FORMAT, pad); if (slot->pending_pad && pad != slot->pending_pad) { - GST_DEBUG_OBJECT (pad, "A pending pad is present, ignoring"); + GST_DEBUG_OBJECT (pad, "A pending pad is present, dropping"); + ret = GST_PAD_PROBE_DROP; break; } @@ -974,7 +976,7 @@ demux_pad_events (GstPad * pad, GstPadProbeInfo * info, OutputSlotInfo * slot) GST_URI_SOURCE_BIN_UNLOCK (urisrc); unlock_done: - return GST_PAD_PROBE_OK; + return ret; } static GstPadProbeReturn |