summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Craig <dcraig@brightsign.biz>2015-12-16 10:54:17 +0000
committerSebastian Dröge <sebastian@centricular.com>2016-02-23 18:11:42 +0200
commit6cdbf406224494335940b2ac9ab9354453406ed3 (patch)
tree6787b3eee2e874a4a909d6dc7b1217245c7396d8
parenta5691af31972df64350bbd52914fce1c3a7b5c0c (diff)
downloadgstreamer-plugins-good-6cdbf406224494335940b2ac9ab9354453406ed3.tar.gz
aacparse: Handle gst_pad_get_current_caps() returning NULL gracefully
This can happen when the pipeline is currently shutting down. https://bugzilla.gnome.org/show_bug.cgi?id=759539
-rw-r--r--gst/audioparsers/gstaacparse.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gst/audioparsers/gstaacparse.c b/gst/audioparsers/gstaacparse.c
index 2be97c09c..982d2428e 100644
--- a/gst/audioparsers/gstaacparse.c
+++ b/gst/audioparsers/gstaacparse.c
@@ -1016,6 +1016,10 @@ gst_aac_parse_get_audio_profile_object_type (GstAacParse * aacparse)
guint8 ret;
srccaps = gst_pad_get_current_caps (GST_BASE_PARSE_SRC_PAD (aacparse));
+ if (G_UNLIKELY (srccaps == NULL)) {
+ return G_MAXUINT8;
+ }
+
srcstruct = gst_caps_get_structure (srccaps, 0);
profile = gst_structure_get_string (srcstruct, "profile");
if (G_UNLIKELY (profile == NULL)) {