Fix: use gst_buffer_copy_on_write() instead of incorrect copying if READONLY.
authorDavid Schleef <ds@schleef.org>
Thu, 25 Jul 2002 18:59:41 +0000 (18:59 +0000)
committerDavid Schleef <ds@schleef.org>
Thu, 25 Jul 2002 18:59:41 +0000 (18:59 +0000)
Original commit message from CVS:
Fix: use gst_buffer_copy_on_write() instead of incorrect copying if READONLY.

gst/volume/gstvolume.c

index 2dc9ad20c9efe5bc9bd341eaa2e41cc32679c2cf..3a050b46c83e5026fd91d1d89a3564e73cbd1395 100644 (file)
@@ -275,13 +275,7 @@ volume_chain_float (GstPad *pad, GstBuffer *buf)
   filter = GST_VOLUME(GST_OBJECT_PARENT (pad));
   g_return_if_fail(GST_IS_VOLUME(filter));
 
-  if (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_READONLY)){
-    out_buf = gst_buffer_copy (buf);
-    gst_buffer_unref(buf);
-  }
-  else {
-    out_buf = buf;
-  }
+  out_buf = gst_buffer_copy_on_write (buf);
 
   data = (gfloat *)GST_BUFFER_DATA(out_buf);
   num_samples = GST_BUFFER_SIZE(out_buf)/sizeof(gfloat);