Fix stack corruption happening in aacDecoder_drcExtractAndMap()

am: a06d1c2

* commit 'a06d1c2b9af1621037b48557aac42b5ecbdb03b3':
  Fix stack corruption happening in aacDecoder_drcExtractAndMap()
This commit is contained in:
Jean-Michel Trivi 2016-03-22 02:36:16 +00:00 committed by android-build-merger
commit 47739cd9d8

View File

@ -2,7 +2,7 @@
/* -----------------------------------------------------------------------------------------------------------
Software License for The Fraunhofer FDK AAC Codec Library for Android
© Copyright 1995 - 2013 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
© Copyright 1995 - 2013 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V.
All rights reserved.
1. INTRODUCTION
@ -705,6 +705,10 @@ static int aacDecoder_drcExtractAndMap (
}
self->numPayloads = 0;
if (self->numThreads >= MAX_DRC_THREADS) {
self->numThreads = MAX_DRC_THREADS - 1;
}
if (self->dvbAncDataAvailable)
{ /* Append a DVB heavy compression payload thread if available. */
int bitsParsed;
@ -731,6 +735,10 @@ static int aacDecoder_drcExtractAndMap (
/* coupling channels not supported */
if (self->numThreads >= MAX_DRC_THREADS) {
self->numThreads = MAX_DRC_THREADS - 1;
}
/* check for valid threads */
for (thread = 0; thread < self->numThreads; thread++) {
CDrcPayload *pThreadBs = &threadBs[thread];