dashdemux: avoid assertion when splitting buffer
authorThiago Santos <thiagoss@osg.samsung.com>
Fri, 29 May 2015 12:01:29 +0000 (09:01 -0300)
committerThiago Santos <thiagoss@osg.samsung.com>
Fri, 29 May 2015 12:02:42 +0000 (09:02 -0300)
Pass size=-1 as is if that is the case instead of subtracting
the offset. Otherwise we have an invalid size passed for that
buffer.

ext/dash/gstdashdemux.c

index 618c7a883934835b31b15ad8907284db5d79022e..aafb39c02e1bbaac85b9314bd7ae2bc9aede9506 100644 (file)
@@ -1316,7 +1316,7 @@ _gst_buffer_split (GstBuffer * buffer, gint offset, gsize size)
 {
   GstBuffer *newbuf = gst_buffer_copy_region (buffer,
       GST_BUFFER_COPY_FLAGS | GST_BUFFER_COPY_TIMESTAMPS | GST_BUFFER_COPY_META
-      | GST_BUFFER_COPY_MEMORY, offset, size - offset);
+      | GST_BUFFER_COPY_MEMORY, offset, size == -1 ? size : size - offset);
 
   gst_buffer_resize (buffer, 0, offset);