diff --git a/ChangeLog b/ChangeLog index 568463d30f..405c4a0d06 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2005-10-06 Thomas Vander Stichele + + * gst/gstpad.c: (gst_pad_event_default_dispatch): + give events a chance to be handled by event probes when the pad + is not linked + 2005-10-06 Thomas Vander Stichele * gst/gstevent.c: (gst_event_type_get_name), diff --git a/gst/gstpad.c b/gst/gstpad.c index 6590a027ad..fd1e585f60 100644 --- a/gst/gstpad.c +++ b/gst/gstpad.c @@ -2584,23 +2584,22 @@ gst_pad_event_default_dispatch (GstPad * pad, GstEvent * event) pads = g_list_next (pads); - /* for all of the internally-linked pads that are actually linked */ - if (GST_PAD_IS_LINKED (eventpad)) { - if (GST_PAD_DIRECTION (eventpad) == GST_PAD_SRC) { - /* for each pad we send to, we should ref the event; it's up - * to downstream to unref again when handled. */ - GST_LOG_OBJECT (pad, "Reffing and sending event %p to %s:%s", event, - GST_DEBUG_PAD_NAME (eventpad)); - gst_event_ref (event); - gst_pad_push_event (eventpad, event); - } else { - /* we only send the event on one pad, multi-sinkpad elements - * should implement a handler */ - GST_LOG_OBJECT (pad, "sending event %p to one sink pad %s:%s", event, - GST_DEBUG_PAD_NAME (eventpad)); - result = gst_pad_push_event (eventpad, event); - goto done; - } + if (GST_PAD_DIRECTION (eventpad) == GST_PAD_SRC) { + /* for each pad we send to, we should ref the event; it's up + * to downstream to unref again when handled. */ + GST_LOG_OBJECT (pad, "Reffing and sending event %p (%s) to %s:%s", + event, gst_event_type_get_name (GST_EVENT_TYPE (event)), + GST_DEBUG_PAD_NAME (eventpad)); + gst_event_ref (event); + gst_pad_push_event (eventpad, event); + } else { + /* we only send the event on one pad, multi-sinkpad elements + * should implement a handler */ + GST_LOG_OBJECT (pad, "sending event %p (%s) to one sink pad %s:%s", + event, gst_event_type_get_name (GST_EVENT_TYPE (event)), + GST_DEBUG_PAD_NAME (eventpad)); + result = gst_pad_push_event (eventpad, event); + goto done; } } /* we handled the incoming event so we unref once */