From 899060d5793e50fbef81d51d33ec85fdbaa884f1 Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Wed, 17 Feb 2016 15:26:49 +0100 Subject: [PATCH] Revert "ghostpad: Do nothing in _internal_activate_push_default" That commit would break scheduling reconfiguration with ghostpads This reverts commit ab55ad7eaad4fa2c0b16c789350e882cf70a27ed. --- gst/gstghostpad.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/gst/gstghostpad.c b/gst/gstghostpad.c index cf97947f62..96703ed3eb 100644 --- a/gst/gstghostpad.c +++ b/gst/gstghostpad.c @@ -277,7 +277,19 @@ static gboolean gst_ghost_pad_internal_activate_push_default (GstPad * pad, GstObject * parent, gboolean active) { - return TRUE; + gboolean ret; + GstPad *other; + + GST_LOG_OBJECT (pad, "%sactivate push on %s:%s, we're ok", + (active ? "" : "de"), GST_DEBUG_PAD_NAME (pad)); + + /* in both cases (SRC and SINK) we activate just the internal pad. The targets + * will be activated later (or already in case of a ghost sinkpad). */ + GST_PROXY_PAD_ACQUIRE_INTERNAL (pad, other, FALSE); + ret = gst_pad_activate_mode (other, GST_PAD_MODE_PUSH, active); + GST_PROXY_PAD_RELEASE_INTERNAL (other); + + return ret; } static gboolean