bufferlist: make sure list is writable before adding or removing buffers
authorPrashant Gotarne <ps.gotarne@samsung.com>
Tue, 7 Apr 2015 09:30:46 +0000 (15:00 +0530)
committerTim-Philipp Müller <tim@centricular.com>
Wed, 8 Apr 2015 08:51:18 +0000 (09:51 +0100)
https://bugzilla.gnome.org/show_bug.cgi?id=747439

gst/gstbufferlist.c

index 18f0e39..3b2b9a0 100644 (file)
@@ -310,6 +310,7 @@ gst_buffer_list_insert (GstBufferList * list, gint idx, GstBuffer * buffer)
 
   g_return_if_fail (GST_IS_BUFFER_LIST (list));
   g_return_if_fail (buffer != NULL);
+  g_return_if_fail (gst_buffer_list_is_writable (list));
 
   if (idx == -1 && list->n_buffers < list->n_allocated) {
     list->buffers[list->n_buffers++] = buffer;
@@ -359,6 +360,7 @@ gst_buffer_list_remove (GstBufferList * list, guint idx, guint length)
   g_return_if_fail (GST_IS_BUFFER_LIST (list));
   g_return_if_fail (idx < list->n_buffers);
   g_return_if_fail (idx + length <= list->n_buffers);
+  g_return_if_fail (gst_buffer_list_is_writable (list));
 
   gst_buffer_list_remove_range_internal (list, idx, length, TRUE);
 }