From f22af4c0bb89d0879d21dbeed79ae96c59c81d6b Mon Sep 17 00:00:00 2001 From: Thomas Vander Stichele Date: Thu, 6 Oct 2005 07:13:01 +0000 Subject: [PATCH] gst/gstghostpad.c: add push activation of sink ghost pads. Original commit message from CVS: 2005-10-06 Thomas Vander Stichele * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push): add push activation of sink ghost pads. Andye, please verify --- ChangeLog | 6 ++++++ gst/gstghostpad.c | 12 ++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6c3c387..9405030 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2005-10-06 Thomas Vander Stichele + + * gst/gstghostpad.c: (gst_ghost_pad_internal_do_activate_push): + add push activation of sink ghost pads. + Andye, please verify + 2005-10-05 Thomas Vander Stichele * gst/gstutils.c: (gst_element_link_pads): diff --git a/gst/gstghostpad.c b/gst/gstghostpad.c index ee34ea8..91cbca1 100644 --- a/gst/gstghostpad.c +++ b/gst/gstghostpad.c @@ -484,9 +484,17 @@ gst_ghost_pad_internal_do_activate_push (GstPad * pad, gboolean active) gboolean ret; if (GST_PAD_DIRECTION (pad) == GST_PAD_SINK) { - g_critical ("how did I get here?"); + GstPad *parent = GST_PAD (gst_object_get_parent (GST_OBJECT (pad))); + + if (parent) { + g_return_val_if_fail (GST_IS_GHOST_PAD (parent), FALSE); + + ret = gst_pad_activate_push (parent, active); - ret = FALSE; + gst_object_unref (parent); + } else { + ret = FALSE; + } } else { GstPad *peer = gst_pad_get_peer (pad); -- 2.7.4