aggregator: allow src GstAggregatorPads
See https://bugzilla.gnome.org/show_bug.cgi?id=793917
https://bugzilla.gnome.org/show_bug.cgi?id=793934
diff --git a/libs/gst/base/gstaggregator.c b/libs/gst/base/gstaggregator.c
index 9d6bb7a..89778a3 100644
--- a/libs/gst/base/gstaggregator.c
+++ b/libs/gst/base/gstaggregator.c
@@ -2739,14 +2739,16 @@
{
GstPad *pad = GST_PAD (object);
- gst_pad_set_chain_function (pad,
- GST_DEBUG_FUNCPTR (gst_aggregator_pad_chain));
- gst_pad_set_event_full_function_full (pad,
- GST_DEBUG_FUNCPTR (gst_aggregator_pad_event_func), NULL, NULL);
- gst_pad_set_query_function (pad,
- GST_DEBUG_FUNCPTR (gst_aggregator_pad_query_func));
- gst_pad_set_activatemode_function (pad,
- GST_DEBUG_FUNCPTR (gst_aggregator_pad_activate_mode_func));
+ if (GST_PAD_IS_SINK (pad)) {
+ gst_pad_set_chain_function (pad,
+ GST_DEBUG_FUNCPTR (gst_aggregator_pad_chain));
+ gst_pad_set_event_full_function_full (pad,
+ GST_DEBUG_FUNCPTR (gst_aggregator_pad_event_func), NULL, NULL);
+ gst_pad_set_query_function (pad,
+ GST_DEBUG_FUNCPTR (gst_aggregator_pad_query_func));
+ gst_pad_set_activatemode_function (pad,
+ GST_DEBUG_FUNCPTR (gst_aggregator_pad_activate_mode_func));
+ }
}
static void