Index: gst/gstbuffer.c
===================================================================
RCS file: /cvs/gstreamer/gstreamer/gst/gstbuffer.c,v
retrieving revision 1.141
diff -u -p -r1.141 gstbuffer.c
--- gst/gstbuffer.c	12 Feb 2008 12:04:42 -0000	1.141
+++ gst/gstbuffer.c	14 Feb 2008 09:50:20 -0000
@@ -599,6 +602,10 @@ gst_buffer_create_sub (GstBuffer * buffe
   GST_BUFFER_DATA (GST_BUFFER_CAST (subbuffer)) = buffer->data + offset;
   GST_BUFFER_SIZE (GST_BUFFER_CAST (subbuffer)) = size;
 
+  /* copy all the flags except IN_CAPS */
+  GST_BUFFER_FLAG_SET (subbuffer, GST_BUFFER_FLAGS (buffer));
+  GST_BUFFER_FLAG_UNSET (subbuffer, GST_BUFFER_FLAG_IN_CAPS);
+
   /* we can copy the timestamp and offset if the new buffer starts at
    * offset 0 */
   if (offset == 0) {
