buffer: add gst_clear_buffer()

Basically, you can use this instead of using gst_buffer_unref (which
needs to be preceded by a NULL-check).

Also fixes #275
This commit is contained in:
Niels De Graef 2018-11-04 18:51:28 +01:00 committed by Sebastian Dröge
parent 7e69305657
commit 1068d9e2c8

View file

@ -442,6 +442,25 @@ gst_buffer_unref (GstBuffer * buf)
gst_mini_object_unref (GST_MINI_OBJECT_CAST (buf)); gst_mini_object_unref (GST_MINI_OBJECT_CAST (buf));
} }
/**
* gst_clear_buffer: (skip)
* @buf_ptr: a pointer to a #GstBuffer reference
*
* Clears a reference to a #GstBuffer.
*
* @buf_ptr must not be %NULL.
*
* If the reference is %NULL then this function does nothing. Otherwise, the
* reference count of the buffer is decreased and the pointer is set to %NULL.
*
* Since: 1.16
*/
static inline void
gst_clear_buffer (GstBuffer ** buf_ptr)
{
gst_clear_mini_object (buf_ptr);
}
/* copy buffer */ /* copy buffer */
/** /**
* gst_buffer_copy: * gst_buffer_copy: