diff --git a/ChangeLog b/ChangeLog index 0ca1ef8cfd..862cccc502 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2005-10-04 Michael Smith + + * gst/playback/gstplaybin.c: (gst_play_bin_send_event): + Correct refcounting in send_event() function. Previously was wrong + if the first sink was unable to handle the event. + 2005-10-03 Thomas Vander Stichele * configure.ac: diff --git a/gst/playback/gstplaybin.c b/gst/playback/gstplaybin.c index 727c905840..0280029992 100644 --- a/gst/playback/gstplaybin.c +++ b/gst/playback/gstplaybin.c @@ -866,12 +866,15 @@ gst_play_bin_send_event (GstElement * element, GstEvent * event) while (sinks) { GstElement *sink = GST_ELEMENT_CAST (sinks->data); + gst_event_ref (event); if ((res = gst_element_send_event (sink, event))) break; sinks = g_list_next (sinks); } + gst_event_unref (event); + return res; }