From 246618125f419a8a6cbb8f5534b151623e46828c Mon Sep 17 00:00:00 2001 From: Jan Schmidt Date: Tue, 3 Jan 2017 02:12:27 +1100 Subject: [PATCH] padtemplate: Fix null pointer dereference on invalid static caps A typo in a static caps string may result in failure to deserialise it, so don't dereference the result without checking. --- gst/gstpadtemplate.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gst/gstpadtemplate.c b/gst/gstpadtemplate.c index 453c2d173e..55ab8923de 100644 --- a/gst/gstpadtemplate.c +++ b/gst/gstpadtemplate.c @@ -415,9 +415,11 @@ gst_pad_template_set_property (GObject * object, guint prop_id, break; case PROP_CAPS: GST_PAD_TEMPLATE_CAPS (object) = g_value_dup_boxed (value); - /* GstPadTemplate are usually leaked so are their caps */ - GST_MINI_OBJECT_FLAG_SET (GST_PAD_TEMPLATE_CAPS (object), - GST_MINI_OBJECT_FLAG_MAY_BE_LEAKED); + if (GST_PAD_TEMPLATE_CAPS (object) != NULL) { + /* GstPadTemplate are usually leaked so are their caps */ + GST_MINI_OBJECT_FLAG_SET (GST_PAD_TEMPLATE_CAPS (object), + GST_MINI_OBJECT_FLAG_MAY_BE_LEAKED); + } break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);