mirror of https://github.com/mstorsjo/fdk-aac.git
Fix signed integer overflow in calcFactorPerBand() calculation.
Bug: 131430997 Test: atest DecoderTestXheAac ; atest DecoderTestAacDrc Change-Id: I9f18f675112651be8dec5c0474601ca6531fbf15
This commit is contained in:
parent
a7029823f4
commit
9ba6f8b6a2
|
@ -1,7 +1,7 @@
|
|||
/* -----------------------------------------------------------------------------
|
||||
Software License for The Fraunhofer FDK AAC Codec Library for Android
|
||||
|
||||
© Copyright 1995 - 2018 Fraunhofer-Gesellschaft zur Förderung der angewandten
|
||||
© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten
|
||||
Forschung e.V. All rights reserved.
|
||||
|
||||
1. INTRODUCTION
|
||||
|
@ -230,6 +230,8 @@ static UCHAR getStopBand(
|
|||
}
|
||||
}
|
||||
|
||||
stopMin = fMin(stopMin, 64);
|
||||
|
||||
/*
|
||||
Choose a stop band between k1 and 64 depending on stopFreq (0..13),
|
||||
based on a logarithmic scale.
|
||||
|
@ -523,7 +525,8 @@ static FIXP_SGL calcFactorPerBand(int k_start, int k_stop, int num_bands) {
|
|||
step = FL2FXCONST_DBL(0.0f);
|
||||
}
|
||||
}
|
||||
return FX_DBL2FX_SGL(bandfactor << 1);
|
||||
return (bandfactor >= FL2FXCONST_DBL(0.5)) ? (FIXP_SGL)MAXVAL_SGL
|
||||
: FX_DBL2FX_SGL(bandfactor << 1);
|
||||
}
|
||||
|
||||
/*!
|
||||
|
|
Loading…
Reference in New Issue