OSDN Git Service

stagefright aacenc: Avoid overflows when calculating normFactor
authorMartin Storsjo <martin@martin.st>
Sun, 19 Feb 2012 19:46:24 +0000 (21:46 +0200)
committerMartin Storsjo <martin@martin.st>
Sun, 19 Feb 2012 19:47:54 +0000 (21:47 +0200)
commitdcdfc1ad27cb64bcb51a864b020b846ba22ce2a7
tree79772e6a3714586e3931f1702fe29494ae964cb4
parent01e29ede19cd7d85bfef38896de8e71e569cd211
stagefright aacenc: Avoid overflows when calculating normFactor

normFactor is calculated using the saturating L_add function,
but if the value added (*psfbPeFactors) is negative, the sum
can end up negative.

*psfbPeFactors can end up negative if redThrExp is less than
*psfbNActiveLines.

In cases where *psfbPeFactors ended up negative, normFactor
became INT_MIN, causing division by zero later.

Change-Id: I00c852e457b22f7eef4d6ed1887629828057206b
media/libstagefright/codecs/aacenc/src/adj_thr.c