[libav-stable] smacker: Don't return packets in unallocated streams

Martin Storsjö git at libav.org
Wed Sep 11 19:28:07 CEST 2013


Module: libav
Branch: master
Commit: 8d928023f953a28692ba27071a448259134b103b

Author:    Martin Storsjö <martin at martin.st>
Committer: Martin Storsjö <martin at martin.st>
Date:      Wed Sep 11 15:20:01 2013 +0300

smacker: Don't return packets in unallocated streams

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable at libav.org
Signed-off-by: Martin Storsjö <martin at martin.st>

---

 libavformat/smacker.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/libavformat/smacker.c b/libavformat/smacker.c
index cd4353a..a15bded 100644
--- a/libavformat/smacker.c
+++ b/libavformat/smacker.c
@@ -344,6 +344,8 @@ static int smacker_read_packet(AVFormatContext *s, AVPacket *pkt)
         smk->cur_frame++;
         smk->nextpos = avio_tell(s->pb);
     } else {
+        if (smk->stream_id[smk->curstream] < 0)
+            return AVERROR_INVALIDDATA;
         if (av_new_packet(pkt, smk->buf_sizes[smk->curstream]))
             return AVERROR(ENOMEM);
         memcpy(pkt->data, smk->bufs[smk->curstream], smk->buf_sizes[smk->curstream]);



More information about the libav-stable mailing list