basetransform: handle gst_base_transform_query_caps() returning NULL
authorGuillaume Desmottes <guillaume.desmottes@onestream.live>
Wed, 1 Jun 2022 07:25:29 +0000 (09:25 +0200)
committerGuillaume Desmottes <guillaume.desmottes@onestream.live>
Wed, 1 Jun 2022 07:55:53 +0000 (09:55 +0200)
If gst_base_transform_transform_caps() returns NULL, gst_base_transform_query_caps()
will return NULL as well.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2532>

subprojects/gstreamer/libs/gst/base/gstbasetransform.c

index ac4b80a..38fbb4d 100644 (file)
@@ -1595,6 +1595,10 @@ gst_base_transform_default_query (GstBaseTransform * trans,
 
       gst_query_parse_caps (query, &filter);
       caps = gst_base_transform_query_caps (trans, pad, filter);
+      if (!caps) {
+        GST_WARNING_OBJECT (pad, "no caps can be handled by this pad");
+        caps = gst_caps_new_empty ();
+      }
       gst_query_set_caps_result (query, caps);
       gst_caps_unref (caps);
       ret = TRUE;