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
(cherry picked from commit 2768a078f34a4d6cdb05916ad0e1f02d4c73fb6b)
Merged-In: I64e7fe1b258be2f59c6d39c0b7b699fa881d79e6
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 @@
}
}
}
+
+ /* 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) {