Tremolo: Add check for bad return value in decode_map
Test: poc in bug report
Test: atest android.mediav2.cts.CodecDecoderTest
Test: atest VtsHalMediaC2V1_0TargetAudioDecTest
Test: atest VorbisDecoderTest
Bug: 210625816
Change-Id: Ib1c25d524d8ca64d491212edb0625a6541ec6a3f
(cherry picked from commit 3b8b8e610f2309a125b01d97a20c890ad820153b)
diff --git a/Tremolo/codebook.c b/Tremolo/codebook.c
index 4e9e570..b67c447 100644
--- a/Tremolo/codebook.c
+++ b/Tremolo/codebook.c
@@ -765,6 +765,7 @@
static int decode_map(codebook *s, oggpack_buffer *b, ogg_int32_t *v, int point){
ogg_uint32_t entry = decode_packed_entry_number(s,b);
int i;
+ if(entry==UINT_MAX)return -1;
if(oggpack_eop(b))return(-1);
/* 1 used by test file 0 */