summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@collabora.co.uk>2012-01-19 15:17:58 +0100
committerWim Taymans <wim.taymans@collabora.co.uk>2012-01-19 15:17:58 +0100
commitc6ac51e72980acf6c9c232e0911f642f0c2031aa (patch)
tree6c332b9db07d26b3b0dd592506359e6f78037cae
parentacf0d50bf1d9d3bc8b412b301c1ef0f8c1517259 (diff)
basesrc: handle NULL from getcaps
If the getcaps functions returns NULL, return FALSE from the CAPS query.
-rw-r--r--libs/gst/base/gstbasesrc.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c
index bc37bf100..a127f4eef 100644
--- a/libs/gst/base/gstbasesrc.c
+++ b/libs/gst/base/gstbasesrc.c
@@ -1178,10 +1178,13 @@ gst_base_src_default_query (GstBaseSrc * src, GstQuery * query)
bclass = GST_BASE_SRC_GET_CLASS (src);
if (bclass->get_caps) {
gst_query_parse_caps (query, &filter);
- caps = bclass->get_caps (src, filter);
- gst_query_set_caps_result (query, caps);
- gst_caps_unref (caps);
- res = TRUE;
+ if ((caps = bclass->get_caps (src, filter))) {
+ gst_query_set_caps_result (query, caps);
+ gst_caps_unref (caps);
+ res = TRUE;
+ } else {
+ res = FALSE;
+ }
} else
res = FALSE;
break;