gstbuffer: add additional checking for writability
authorWim Taymans <wim.taymans@collabora.co.uk>
Thu, 6 Aug 2009 16:47:32 +0000 (18:47 +0200)
committerWim Taymans <wim.taymans@collabora.co.uk>
Thu, 6 Aug 2009 16:47:32 +0000 (18:47 +0200)
Check for metadata writability when setting caps on buffer or when copying
metadata flags. Only enable these extra assertions in git versions.
This should help us find bad elements.

gst/gstbuffer.c

index 9919211..b56b16c 100644 (file)
@@ -197,6 +197,11 @@ gst_buffer_copy_metadata (GstBuffer * dest, const GstBuffer * src,
   if (G_UNLIKELY (dest == src))
     return;
 
+#if GST_VERSION_NANO == 1
+  /* we enable this extra debugging in git versions only for now */
+  g_return_if_fail (gst_buffer_is_metadata_writable (dest));
+#endif
+
   GST_CAT_LOG (GST_CAT_BUFFER, "copy %p to %p", src, dest);
 
   if (flags & GST_BUFFER_COPY_FLAGS) {
@@ -395,6 +400,10 @@ void
 gst_buffer_set_caps (GstBuffer * buffer, GstCaps * caps)
 {
   g_return_if_fail (buffer != NULL);
+#if GST_VERSION_NANO == 1
+  /* we enable this extra debugging in git versions only for now */
+  g_return_if_fail (gst_buffer_is_metadata_writable (buffer));
+#endif
 
   gst_caps_replace (&GST_BUFFER_CAPS (buffer), caps);
 }