aacparse: Handle gst_pad_get_current_caps() returning NULL gracefully
authorDave Craig <dcraig@brightsign.biz>
Wed, 16 Dec 2015 10:54:17 +0000 (10:54 +0000)
committerSebastian Dröge <sebastian@centricular.com>
Tue, 23 Feb 2016 16:11:42 +0000 (18:11 +0200)
This can happen when the pipeline is currently shutting down.

https://bugzilla.gnome.org/show_bug.cgi?id=759539

gst/audioparsers/gstaacparse.c

index 2be97c09c687a7f980076ec02d5bda95a26e41bd..982d2428eca2125f563a91b00fcb1a7d17fb9e2a 100644 (file)
@@ -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)) {