aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Michel Trivi <jmtrivi@google.com>2019-03-07 14:16:05 -0800
committerJean-Michel Trivi <jmtrivi@google.com>2019-03-07 14:16:05 -0800
commit8972e93edd448c378e0cc099a0fbe25b64295a64 (patch)
treefe5a823a7c6aa1441ae5f62a6decc65b3884927b
parent3e8d8ba558798b1052aec831294aa86ca476bec3 (diff)
downloadfdk-aac-8972e93edd448c378e0cc099a0fbe25b64295a64.tar.gz
fdk-aac-8972e93edd448c378e0cc099a0fbe25b64295a64.tar.bz2
fdk-aac-8972e93edd448c378e0cc099a0fbe25b64295a64.zip
libSBRdec: prevent OOB access
In generateFixFixOnly() check validity of index before accessing SBR decoder envolope tables. Bug: 112052062 Test: see bug Change-Id: Icd7ec3807eea9ef8417dba7383f361101becc4f2
-rw-r--r--libSBRdec/src/env_extr.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/libSBRdec/src/env_extr.cpp b/libSBRdec/src/env_extr.cpp
index c72a7b6..5b7a0b1 100644
--- a/libSBRdec/src/env_extr.cpp
+++ b/libSBRdec/src/env_extr.cpp
@@ -1152,6 +1152,10 @@ static int generateFixFixOnly(FRAME_INFO *hSbrFrameInfo, int tranPosInternal,
int nEnv, i, tranIdx;
const int *pTable;
+ if (tranPosInternal >= numberTimeSlots) {
+ return 0;
+ }
+
switch (numberTimeSlots) {
case 8:
pTable = FDK_sbrDecoder_envelopeTable_8[tranPosInternal];