mirror of
https://github.com/mstorsjo/fdk-aac.git
synced 2025-02-07 23:28:39 +01:00
DO NOT MERGE Prevent out of bound memory access in GetInvInt
In GetInvInt(int) function, malicious content can access memory outside of the invCount array. Always bound access to valid indices. Test: see bug for malicious content, decoded with "stagefright -s -a" Bug: 65025048 Change-Id: Id1f1582bc5afc76e3e90128d92034a5899a9b51e
This commit is contained in:
parent
78653b30e9
commit
76c4625fe3
@ -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];
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user