mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-07 07:58:51 +00:00
Unref event if we don't forward it, unref pads when done with them.
This commit is contained in:
parent
981d08088c
commit
09424e4b3a
1 changed files with 5 additions and 0 deletions
|
@ -1038,6 +1038,8 @@ gst_input_selector_event (GstPad * pad, GstEvent * event)
|
||||||
|
|
||||||
gst_object_unref (otherpad);
|
gst_object_unref (otherpad);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
gst_event_unref (event);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1191,6 +1193,8 @@ gst_input_selector_activate_sinkpad (GstInputSelector * sel, GstPad * pad)
|
||||||
if (active_sinkpad == NULL || sel->select_all) {
|
if (active_sinkpad == NULL || sel->select_all) {
|
||||||
/* first pad we get activity on becomes the activated pad by default, if we
|
/* first pad we get activity on becomes the activated pad by default, if we
|
||||||
* select all, we also remember the last used pad. */
|
* select all, we also remember the last used pad. */
|
||||||
|
if (sel->active_sinkpad)
|
||||||
|
gst_object_unref (sel->active_sinkpad);
|
||||||
active_sinkpad = sel->active_sinkpad = gst_object_ref (pad);
|
active_sinkpad = sel->active_sinkpad = gst_object_ref (pad);
|
||||||
GST_DEBUG_OBJECT (sel, "Activating pad %s:%s", GST_DEBUG_PAD_NAME (pad));
|
GST_DEBUG_OBJECT (sel, "Activating pad %s:%s", GST_DEBUG_PAD_NAME (pad));
|
||||||
}
|
}
|
||||||
|
@ -1250,6 +1254,7 @@ gst_input_selector_release_pad (GstElement * element, GstPad * pad)
|
||||||
/* if the pad was the active pad, makes us select a new one */
|
/* if the pad was the active pad, makes us select a new one */
|
||||||
if (sel->active_sinkpad == pad) {
|
if (sel->active_sinkpad == pad) {
|
||||||
GST_DEBUG_OBJECT (sel, "Deactivating pad %s:%s", GST_DEBUG_PAD_NAME (pad));
|
GST_DEBUG_OBJECT (sel, "Deactivating pad %s:%s", GST_DEBUG_PAD_NAME (pad));
|
||||||
|
gst_object_unref (sel->active_sinkpad);
|
||||||
sel->active_sinkpad = NULL;
|
sel->active_sinkpad = NULL;
|
||||||
}
|
}
|
||||||
sel->n_pads--;
|
sel->n_pads--;
|
||||||
|
|
Loading…
Reference in a new issue