flacdec: also try upstream first for duration query in DEFAULT format
authorTim-Philipp Müller <tim.muller@collabora.co.uk>
Mon, 23 May 2011 12:25:44 +0000 (13:25 +0100)
committerTim-Philipp Müller <tim.muller@collabora.co.uk>
Mon, 23 May 2011 12:25:44 +0000 (13:25 +0100)
https://bugzilla.gnome.org/show_bug.cgi?id=650785

ext/flac/gstflacdec.c

index 4957129dc086f815f8c953394019fb04f72808ce..2e4085dd632121223ce122865ae36730271ada32 100644 (file)
@@ -1724,8 +1724,9 @@ gst_flac_dec_src_query (GstPad * pad, GstQuery * query)
 
       gst_query_parse_duration (query, &fmt, NULL);
 
-      /* try any demuxers before us first */
-      if (fmt == GST_FORMAT_TIME && peer && gst_pad_query (peer, query)) {
+      /* try any demuxers or parsers before us first */
+      if ((fmt == GST_FORMAT_TIME || fmt == GST_FORMAT_DEFAULT) &&
+          peer != NULL && gst_pad_query (peer, query)) {
         gst_query_parse_duration (query, NULL, &len);
         GST_DEBUG_OBJECT (flacdec, "peer returned duration %" GST_TIME_FORMAT,
             GST_TIME_ARGS (len));