gst/playback/gstdecodebin.c: Don't try to remove elements twice.
authorWim Taymans <wim.taymans@gmail.com>
Fri, 21 Oct 2005 16:40:08 +0000 (16:40 +0000)
committerWim Taymans <wim.taymans@gmail.com>
Fri, 21 Oct 2005 16:40:08 +0000 (16:40 +0000)
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_init),
(gst_decode_bin_dispose), (free_dynamics), (pad_unblocked),
(pad_blocked), (close_pad_link), (new_pad):
Don't try to remove elements twice.

ChangeLog
gst/playback/gstdecodebin.c

index 67753ed..64cb545 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2005-10-21  Wim Taymans  <wim@fluendo.com>
 
+       * gst/playback/gstdecodebin.c: (gst_decode_bin_init),
+       (gst_decode_bin_dispose), (free_dynamics), (pad_unblocked),
+       (pad_blocked), (close_pad_link), (new_pad):
+       Don't try to remove elements twice.
+
+2005-10-21  Wim Taymans  <wim@fluendo.com>
+
        * ext/theora/theoradec.c: (theora_dec_src_query),
        (theora_dec_sink_event):
        * ext/vorbis/vorbisdec.c: (vorbis_dec_src_query),
index e35080f..d5a012a 100644 (file)
@@ -488,7 +488,7 @@ static void
 pad_blocked (GstPad * pad, gboolean blocked, GstDecodeBin * decode_bin)
 {
   decode_bin->numwaiting--;
-  if (decode_bin->numwaiting == 0) {
+  if (decode_bin->numwaiting == 0 && decode_bin->fakesink) {
     gst_object_ref (decode_bin->fakesink);
     gst_bin_remove (GST_BIN (decode_bin), decode_bin->fakesink);