1
0
mirror of https://github.com/mstorsjo/fdk-aac.git synced 2024-12-12 08:26:11 +01:00

Avoid signed integer overflow in pcmLimiter_Apply(). am: 5a83a8e5e1

Original change: https://googleplex-android-review.googlesource.com/c/platform/external/aac/+/14355877

Change-Id: I798d862bd7532eb5c4c11789358389ce81eb1d1f
This commit is contained in:
Fraunhofer IIS FDK 2021-04-30 14:58:36 +00:00 committed by Automerger Merge Worker
commit e249d56343

View File

@ -1,7 +1,7 @@
/* ----------------------------------------------------------------------------- /* -----------------------------------------------------------------------------
Software License for The Fraunhofer FDK AAC Codec Library for Android Software License for The Fraunhofer FDK AAC Codec Library for Android
© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten © Copyright 1995 - 2020 Fraunhofer-Gesellschaft zur Förderung der angewandten
Forschung e.V. All rights reserved. Forschung e.V. All rights reserved.
1. INTRODUCTION 1. INTRODUCTION
@ -322,7 +322,8 @@ TDLIMITER_ERROR pcmLimiter_Apply(TDLimiterPtr limiter, PCM_LIM* samplesIn,
(FIXP_DBL)SATURATE_LEFT_SHIFT(tmp, scaling, DFRACT_BITS)); (FIXP_DBL)SATURATE_LEFT_SHIFT(tmp, scaling, DFRACT_BITS));
#else #else
samplesOut[j] = (INT_PCM)FX_DBL2FX_PCM((FIXP_DBL)SATURATE_LEFT_SHIFT( samplesOut[j] = (INT_PCM)FX_DBL2FX_PCM((FIXP_DBL)SATURATE_LEFT_SHIFT(
tmp + ((FIXP_DBL)0x8000 >> scaling), scaling, DFRACT_BITS)); (tmp >> 1) + ((FIXP_DBL)0x8000 >> (scaling + 1)), scaling + 1,
DFRACT_BITS));
#endif #endif
} }
} }