From 38168222ae965438704968a106cb08e6ab069145 Mon Sep 17 00:00:00 2001 From: Magnus Holmgren Date: Tue, 10 Oct 2006 19:22:40 +0000 Subject: AAC codec: Fix buffer overrun on high-bitrate files. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11179 a1c6a512-1295-4272-9138-f99709370657 --- apps/codecs/libfaad/bits.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/apps/codecs/libfaad/bits.c b/apps/codecs/libfaad/bits.c index 65f451a8cb..a010e830ed 100644 --- a/apps/codecs/libfaad/bits.c +++ b/apps/codecs/libfaad/bits.c @@ -32,7 +32,10 @@ #include #include "bits.h" -uint8_t static_buffer[1024]; +/* Need to be large enough to fit the largest compressed sample in a file. + * Samples a little larger than 1 KB observed in a 256 kbps file. + */ +uint8_t static_buffer[2048]; /* initialize buffer, call once before first getbits or showbits */ void faad_initbits(bitfile *ld, const void *_buffer, const uint32_t buffer_size) @@ -75,6 +78,7 @@ void faad_initbits(bitfile *ld, const void *_buffer, const uint32_t buffer_size) void faad_endbits(bitfile *ld) { +#if 0 if (ld) { if (ld->buffer) @@ -83,6 +87,9 @@ void faad_endbits(bitfile *ld) ld->buffer = NULL; } } +#else + (void) ld; +#endif } uint32_t faad_get_processed_bits(bitfile *ld) -- cgit v1.2.3