From 1068d9e2c823041d3f75d5a99006e8ef51aec0ae Mon Sep 17 00:00:00 2001 From: Niels De Graef Date: Sun, 4 Nov 2018 18:51:28 +0100 Subject: [PATCH] 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 --- gst/gstbuffer.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gst/gstbuffer.h b/gst/gstbuffer.h index 2804b520f8..1b6296260b 100644 --- a/gst/gstbuffer.h +++ b/gst/gstbuffer.h @@ -442,6 +442,25 @@ gst_buffer_unref (GstBuffer * 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 */ /** * gst_buffer_copy: