Index: libs/gst/base/gstbasetransform.c
===================================================================
RCS file: /cvs/gstreamer/gstreamer/libs/gst/base/gstbasetransform.c,v
retrieving revision 1.90
diff -u -p -r1.90 gstbasetransform.c
--- libs/gst/base/gstbasetransform.c	16 Sep 2006 12:49:02 -0000	1.90
+++ libs/gst/base/gstbasetransform.c	18 Oct 2006 09:22:45 -0000
@@ -939,6 +939,12 @@ gst_base_transform_prepare_output_buffer
   }
 
   if (*out_buf == NULL) {
+    if (out_size == 0) {
+      /* Don't create a buffer if we aren't going to need one */
+      GST_LOG_OBJECT (trans, "Not creating an output buffer since we are not outputting anything.");
+      goto done;
+    }
+
     /* Sub-class didn't already provide a buffer for us. Make one */
     ret = gst_pad_alloc_buffer (trans->srcpad,
         GST_BUFFER_OFFSET (in_buf), out_size, out_caps, out_buf);
