[FFmpeg-cvslog] avcodec/aacdec_template: Check id_map

Michael Niedermayer git at videolan.org
Fri Jan 15 16:23:53 CET 2016


ffmpeg | branch: release/2.8 | Michael Niedermayer <michael at niedermayer.cc> | Sun Jan 10 19:29:39 2016 +0100| [e5567f2f6982e765c6d477b2cb6b8f9f6a4d77ab] | committer: Michael Niedermayer

avcodec/aacdec_template: Check id_map

Fixes index out of bounds error
Fixes: aac_index_out_of_bounds.wmv

Found-by: Piotr Bandurski <ami_stuff at o2.pl>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
(cherry picked from commit 590863876d1478547640304a31c15809c3618090)

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavcodec/aacdec_template.c |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavcodec/aacdec_template.c b/libavcodec/aacdec_template.c
index fb1ce2c..ec8264e 100644
--- a/libavcodec/aacdec_template.c
+++ b/libavcodec/aacdec_template.c
@@ -449,6 +449,10 @@ static int output_configure(AACContext *ac,
         int type =         layout_map[i][0];
         int id =           layout_map[i][1];
         id_map[type][id] = type_counts[type]++;
+        if (id_map[type][id] >= MAX_ELEM_ID) {
+            avpriv_request_sample(ac->avctx, "Remapped id too large\n");
+            return AVERROR_PATCHWELCOME;
+        }
     }
     // Try to sniff a reasonable channel order, otherwise output the
     // channels in the order the PCE declared them.



More information about the ffmpeg-cvslog mailing list