diff options
author | Fraunhofer IIS FDK <audio-fdk@iis.fraunhofer.de> | 2022-04-05 18:53:20 +0200 |
---|---|---|
committer | Jean-Michel Trivi <jmtrivi@google.com> | 2022-04-06 04:46:26 +0000 |
commit | 067929dcd3467fd8e1383303efaff2cfc37224e9 (patch) | |
tree | 825f49297082c523f9e16a17f9ec399b7e35eee5 /libMpegTPDec/src/tpdec_lib.cpp | |
parent | 671c4c80fe5aff65341db2173f32fc411e8dc158 (diff) | |
download | fdk-aac-067929dcd3467fd8e1383303efaff2cfc37224e9.tar.gz fdk-aac-067929dcd3467fd8e1383303efaff2cfc37224e9.tar.bz2 fdk-aac-067929dcd3467fd8e1383303efaff2cfc37224e9.zip |
Reject invalid out of band config in transportDec_OutOfBandConfig() and skip re-allocation.
Bug: 224314979
Bug: 221734266
Test: adb shell /data/fuzz/arm64/C2FuzzerAacDec/C2FuzzerAacDec /data/local/tmp/clusterfuzz-testcase-minimized-C2FuzzerAacDec-5461414938804224
Test: adb shell /data/fuzz/arm64/C2FuzzerAacDec/C2FuzzerAacDec /data/local/tmp/clusterfuzz-testcase-minimized-C2FuzzerAacDec-5062403589275648
Change-Id: I64e7fe1b258be2f59c6d39c0b7b699fa881d79e6
Merged-In: I64e7fe1b258be2f59c6d39c0b7b699fa881d79e6
Diffstat (limited to 'libMpegTPDec/src/tpdec_lib.cpp')
-rw-r--r-- | libMpegTPDec/src/tpdec_lib.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libMpegTPDec/src/tpdec_lib.cpp b/libMpegTPDec/src/tpdec_lib.cpp index 091d011..8cd9cb0 100644 --- a/libMpegTPDec/src/tpdec_lib.cpp +++ b/libMpegTPDec/src/tpdec_lib.cpp @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------------- Software License for The Fraunhofer FDK AAC Codec Library for Android -© Copyright 1995 - 2019 Fraunhofer-Gesellschaft zur Förderung der angewandten +© Copyright 1995 - 2022 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. All rights reserved. 1. INTRODUCTION @@ -351,6 +351,12 @@ TRANSPORTDEC_ERROR transportDec_OutOfBandConfig(HANDLE_TRANSPORTDEC hTp, } } } + + /* if an error is detected terminate config parsing to avoid that an invalid + * config is accepted in the second pass */ + if (err != TRANSPORTDEC_OK) { + break; + } } if (err == TRANSPORTDEC_OK && fConfigFound) { |