mirror of https://github.com/mstorsjo/fdk-aac.git
Merge "Signed Integer Overflows in imlt_block()" am: 55930c28af
am: 7d959f2f30
am: 83ba3e096a
Change-Id: I0805e8ba62c75a16c9df2d2169c79b8ddbd0974e
This commit is contained in:
commit
61b3c49df0
|
@ -534,10 +534,12 @@ INT CLpd_FAC_Acelp2Mdct(H_MDCT hMdct, FIXP_DBL *output, FIXP_DBL *_pSpec,
|
||||||
|
|
||||||
/* Optional scaling of time domain - no yet windowed - of current spectrum */
|
/* Optional scaling of time domain - no yet windowed - of current spectrum */
|
||||||
if (total_gain != (FIXP_DBL)0) {
|
if (total_gain != (FIXP_DBL)0) {
|
||||||
scaleValuesWithFactor(pSpec, total_gain, tl, spec_scale[0] + scale);
|
for (i = 0; i < tl; i++) {
|
||||||
} else {
|
pSpec[i] = fMult(pSpec[i], total_gain);
|
||||||
scaleValuesSaturate(pSpec, tl, spec_scale[0] + scale);
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
int loc_scale = fixmin_I(spec_scale[0] + scale, (INT)DFRACT_BITS - 1);
|
||||||
|
scaleValuesSaturate(pSpec, tl, loc_scale);
|
||||||
|
|
||||||
pOut1 += fl / 2 - 1;
|
pOut1 += fl / 2 - 1;
|
||||||
pCurr = pSpec + tl - fl / 2;
|
pCurr = pSpec + tl - fl / 2;
|
||||||
|
@ -623,10 +625,12 @@ INT CLpd_FAC_Acelp2Mdct(H_MDCT hMdct, FIXP_DBL *output, FIXP_DBL *_pSpec,
|
||||||
*/
|
*/
|
||||||
/* and de-scale current spectrum signal (time domain, no yet windowed) */
|
/* and de-scale current spectrum signal (time domain, no yet windowed) */
|
||||||
if (total_gain != (FIXP_DBL)0) {
|
if (total_gain != (FIXP_DBL)0) {
|
||||||
scaleValuesWithFactor(pSpec, total_gain, tl, spec_scale[w] + scale);
|
for (i = 0; i < tl; i++) {
|
||||||
} else {
|
pSpec[i] = fMult(pSpec[i], total_gain);
|
||||||
scaleValuesSaturate(pSpec, tl, spec_scale[w] + scale);
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
loc_scale = fixmin_I(spec_scale[w] + scale, (INT)DFRACT_BITS - 1);
|
||||||
|
scaleValuesSaturate(pSpec, tl, loc_scale);
|
||||||
|
|
||||||
if (noOutSamples <= nrSamples) {
|
if (noOutSamples <= nrSamples) {
|
||||||
/* Divert output first half to overlap buffer if we already got enough
|
/* Divert output first half to overlap buffer if we already got enough
|
||||||
|
|
Loading…
Reference in New Issue