summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2013-05-09 12:27:12 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-05-09 12:27:12 +0200
commitf93c52684ab6386dc37e1d69579a2ebf3a6b30c7 (patch)
treed99e8aa0dcd8777319c714ae0b96d1c527fba593 /plugins
parent1d404780145950c597d6b7c78b4a48463641b5cb (diff)
outputselector: Always forward sticky events to all pads
Diffstat (limited to 'plugins')
-rw-r--r--plugins/elements/gstoutputselector.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/plugins/elements/gstoutputselector.c b/plugins/elements/gstoutputselector.c
index 99dc05114..fe5f99d06 100644
--- a/plugins/elements/gstoutputselector.c
+++ b/plugins/elements/gstoutputselector.c
@@ -546,19 +546,19 @@ gst_output_selector_event (GstPad * pad, GstObject * parent, GstEvent * event)
res = gst_pad_event_default (pad, parent, event);
break;
}
- case GST_EVENT_EOS:
- /* Send eos to all src pads */
- res = gst_pad_event_default (pad, parent, event);
- break;
default:
{
- /* Send other events to pending or active src pad */
- active = gst_output_selector_get_active (sel);
- if (active) {
- res = gst_pad_push_event (active, event);
- gst_object_unref (active);
+ if (GST_EVENT_IS_STICKY (event)) {
+ res = gst_pad_event_default (pad, parent, event);
} else {
- gst_event_unref (event);
+ /* Send other events to pending or active src pad */
+ active = gst_output_selector_get_active (sel);
+ if (active) {
+ res = gst_pad_push_event (active, event);
+ gst_object_unref (active);
+ } else {
+ gst_event_unref (event);
+ }
}
break;
}