From c5cff9814359160d956cc00cac7ca6692a19b783 Mon Sep 17 00:00:00 2001 From: Thibault Saunier Date: Thu, 9 Apr 2020 11:20:34 -0400 Subject: [PATCH] basebin: Do not set stream_group if upstream didn't provide it CID: 1461278 --- plugins/ges/gesbasebin.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/plugins/ges/gesbasebin.c b/plugins/ges/gesbasebin.c index 3b0abbcedd..ad3438a798 100644 --- a/plugins/ges/gesbasebin.c +++ b/plugins/ges/gesbasebin.c @@ -156,20 +156,21 @@ ges_base_bin_event (GstPad * pad, GstObject * parent, GstEvent * event) guint stream_group; GstTagList *tlist = gst_tag_list_new ("is-ges-timeline", TRUE, NULL); GstPad *peer = gst_pad_get_peer (pad); + GstEvent *new_event; gst_event_parse_stream_start (event, &stream_id); - gst_event_parse_group_id (event, &stream_group); new_stream_id = gst_pad_create_stream_id (peer, GST_ELEMENT (GST_OBJECT_PARENT (parent)), stream_id); - gst_event_unref (event); gst_object_unref (peer); - event = gst_event_new_stream_start (new_stream_id); - gst_event_set_group_id (event, stream_group); + new_event = gst_event_new_stream_start (new_stream_id); + if (gst_event_parse_group_id (event, &stream_group)) + gst_event_set_group_id (new_event, stream_group); + gst_event_unref (event); g_free (new_stream_id); - gst_pad_event_default (pad, parent, event); + gst_pad_event_default (pad, parent, new_event); gst_tag_list_set_scope (tlist, GST_TAG_SCOPE_GLOBAL);