diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2016-02-23 18:17:42 +0200 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2016-02-23 18:17:42 +0200 |
commit | fd42320ec18a82e9c578c9639a4cefb6f02d786e (patch) | |
tree | e88ceb93af83856d469167942df7c0fce75616dd | |
parent | a5eee1e28a14fb0547b9c9c3fa05199865fb2f06 (diff) |
dataurisrc: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps()
Remove calls to gst_pad_has_current_caps() which then go on to call
gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just
use gst_pad_get_current_caps() and check for NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=759539
-rw-r--r-- | gst/dataurisrc/gstdataurisrc.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gst/dataurisrc/gstdataurisrc.c b/gst/dataurisrc/gstdataurisrc.c index 45c1814c0..fe018b0df 100644 --- a/gst/dataurisrc/gstdataurisrc.c +++ b/gst/dataurisrc/gstdataurisrc.c @@ -177,9 +177,8 @@ gst_data_uri_src_get_caps (GstBaseSrc * basesrc, GstCaps * filter) GstCaps *caps; GST_OBJECT_LOCK (src); - if (gst_pad_has_current_caps (GST_BASE_SRC_PAD (basesrc))) - caps = gst_pad_get_current_caps (GST_BASE_SRC_PAD (basesrc)); - else + caps = gst_pad_get_current_caps (GST_BASE_SRC_PAD (basesrc)); + if (!caps) caps = gst_caps_new_any (); GST_OBJECT_UNLOCK (src); |