? gst/playback/libgstqueue2_la-gstqueue2.loT
Index: gst/playback/gstdecodebin.c
===================================================================
RCS file: /cvs/gstreamer/gst-plugins-base/gst/playback/gstdecodebin.c,v
retrieving revision 1.108
diff -u -r1.108 gstdecodebin.c
--- gst/playback/gstdecodebin.c	21 May 2008 16:36:47 -0000	1.108
+++ gst/playback/gstdecodebin.c	22 May 2008 11:28:45 -0000
@@ -634,6 +634,9 @@
   if (decode_bin->fakesink) {
     GST_DEBUG_OBJECT (decode_bin, "Removing fakesink and marking state dirty");
 
+    /* Lock the state to prevent it from changing state to non-NULL
+     * before it's removed */
+    gst_element_set_locked_state (decode_bin->fakesink, TRUE);
     /* setting the state to NULL is never async */
     gst_element_set_state (decode_bin->fakesink, GST_STATE_NULL);
     gst_bin_remove (GST_BIN (decode_bin), decode_bin->fakesink);
