opusdec: fix wrong buffer being checked for missing data
authorVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Tue, 2 Feb 2016 15:20:48 +0000 (15:20 +0000)
committerVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Tue, 2 Feb 2016 15:22:55 +0000 (15:22 +0000)
This caused a decoding error if the resulting (wrong) buffer size
was passed to the Opus decoding API.

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

ext/opus/gstopusdec.c

index f2512d1..649cc0c 100644 (file)
@@ -441,10 +441,10 @@ opus_dec_chain_parse_data (GstOpusDec * dec, GstBuffer * buffer)
     size = 0;
   }
 
-  if (gst_buffer_get_size (buffer) == 0) {
+  if (gst_buffer_get_size (buf) == 0) {
     GstClockTime const opus_plc_alignment = 2500 * GST_USECOND;
     GstClockTime aligned_missing_duration;
-    GstClockTime missing_duration = GST_BUFFER_DURATION (buffer);
+    GstClockTime missing_duration = GST_BUFFER_DURATION (buf);
 
     GST_DEBUG_OBJECT (dec,
         "missing buffer, doing PLC duration %" GST_TIME_FORMAT