From c1d25d47fa32a274a181201c5aed41c3c90b3115 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 2 Oct 2005 23:11:41 +0000 Subject: [PATCH] gst/playback/gstdecodebin.c (try_to_link_1) set element to NULL before removing it. Original commit message from CVS: 2005-10-03 Andy Wingo * gst/playback/gstdecodebin.c (try_to_link_1) (remove_element_chain): set element to NULL before removing it. --- ChangeLog | 5 +++++ gst/playback/gstdecodebin.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/ChangeLog b/ChangeLog index b89ea06c5b..fcf1e191fa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-10-03 Andy Wingo + + * gst/playback/gstdecodebin.c (try_to_link_1) + (remove_element_chain): set element to NULL before removing it. + 2005-10-02 Johan Dahlin * ext/gnomevfs/gstgnomevfssrc.c (gst_gnomevfssrc_uri_get_protocols): diff --git a/gst/playback/gstdecodebin.c b/gst/playback/gstdecodebin.c index 79bc5696fb..e29b94d5b2 100644 --- a/gst/playback/gstdecodebin.c +++ b/gst/playback/gstdecodebin.c @@ -601,6 +601,7 @@ try_to_link_1 (GstDecodeBin * decode_bin, GstPad * pad, GList * factories) gst_object_unref (sinkpad); /* this element did not work, remove it again and continue trying * other elements, the element will be disposed. */ + gst_element_set_state (element, GST_STATE_NULL); gst_bin_remove (GST_BIN (decode_bin), element); } else { const gchar *klass; @@ -764,6 +765,8 @@ remove_element_chain (GstDecodeBin * decode_bin, GstPad * pad) g_list_free (int_links); + gst_element_set_state (elem, GST_STATE_NULL); + gst_bin_remove (GST_BIN (decode_bin), elem); }