[FFmpeg-cvslog] avcodec/opusdec: Clear out pointers per packet

Michael Niedermayer git at videolan.org
Fri Mar 13 13:22:55 CET 2015


ffmpeg | branch: release/2.6 | Michael Niedermayer <michaelni at gmx.at> | Sat Mar  7 15:11:39 2015 +0100| [bffed1d9d0c5f07cd7008245b93430cfd7150174] | committer: Michael Niedermayer

avcodec/opusdec: Clear out pointers per packet

This is safer than to assume that all error pathes cleared them and
nothing will use uncleared pointers.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
(cherry picked from commit 1ae092587fc196da5098dea346d7ece81ec35153)

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=bffed1d9d0c5f07cd7008245b93430cfd7150174
---

 libavcodec/opusdec.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/libavcodec/opusdec.c b/libavcodec/opusdec.c
index f8ca133..14d436b 100644
--- a/libavcodec/opusdec.c
+++ b/libavcodec/opusdec.c
@@ -450,6 +450,12 @@ static int opus_decode_packet(AVCodecContext *avctx, void *data,
     int decoded_samples = 0;
     int i, ret;
 
+    for (i = 0; i < c->nb_streams; i++) {
+        OpusStreamContext *s = &c->streams[i];
+        s->out[0] =
+        s->out[1] = NULL;
+    }
+
     /* decode the header of the first sub-packet to find out the sample count */
     if (buf) {
         OpusPacket *pkt = &c->streams[0].packet;



More information about the ffmpeg-cvslog mailing list