aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2017-11-03 19:05:37 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2017-11-03 19:05:37 +0000
commit5565e7791f91f9a7ed940bef793a063311e33b6e (patch)
tree2b0ffeac4668edcd887bd54a60681cb23f000a46
parent6d3dd40e204bf550abcfa589bd9615df8778e118 (diff)
parent76c4625fe3c1cfcb0a493b8df418cc86c294160f (diff)
downloadfdk-aac-5565e7791f91f9a7ed940bef793a063311e33b6e.tar.gz
fdk-aac-5565e7791f91f9a7ed940bef793a063311e33b6e.tar.bz2
fdk-aac-5565e7791f91f9a7ed940bef793a063311e33b6e.zip
Merge "DO NOT MERGE Prevent out of bound memory access in GetInvInt" into lmp-mr1-dev
-rw-r--r--libFDK/include/fixpoint_math.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/libFDK/include/fixpoint_math.h b/libFDK/include/fixpoint_math.h
index df141d3..26c001f 100644
--- a/libFDK/include/fixpoint_math.h
+++ b/libFDK/include/fixpoint_math.h
@@ -450,15 +450,19 @@ inline FIXP_DBL fAddSaturate(const FIXP_DBL a, const FIXP_DBL b)
/**
* \brief Calculate the value of 1/i where i is a integer value. It supports
- * input values from 1 upto 50.
+ * input values from 0 upto 49.
* \param intValue Integer input value.
* \param FIXP_DBL representation of 1/intValue
*/
inline FIXP_DBL GetInvInt(int intValue)
{
- FDK_ASSERT((intValue > 0) && (intValue < 50));
- FDK_ASSERT(intValue<50);
- return invCount[intValue];
+ FDK_ASSERT((intValue >= 0) && (intValue < 50));
+ if (intValue < 0)
+ return invCount[0];
+ else if (intValue > 49)
+ return invCount[49];
+ else
+ return invCount[intValue];
}