summaryrefslogtreecommitdiff
path: root/libavcodec/dcadec.c
diff options
context:
space:
mode:
authorHendrik Leppkes <h.leppkes@gmail.com>2015-11-29 15:32:27 +0100
committerHendrik Leppkes <h.leppkes@gmail.com>2015-11-29 15:32:27 +0100
commitb7855daffe40565cf446639b5496c26730748649 (patch)
tree3a266a8a068b6b57b97a82b8b1ec97034cb28266 /libavcodec/dcadec.c
parent4aa900acbdf6bb4191aa65aad8dabf1224bf42f6 (diff)
parentc12c085be7e86880924249e5cb3f898e45dee134 (diff)
Merge commit 'c12c085be7e86880924249e5cb3f898e45dee134'
* commit 'c12c085be7e86880924249e5cb3f898e45dee134': dcadec: Do not check for overreads in auxiliary data Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
Diffstat (limited to 'libavcodec/dcadec.c')
-rw-r--r--libavcodec/dcadec.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/libavcodec/dcadec.c b/libavcodec/dcadec.c
index b7f6a34465..186b99d798 100644
--- a/libavcodec/dcadec.c
+++ b/libavcodec/dcadec.c
@@ -1165,12 +1165,12 @@ static int dca_subframe_footer(DCAContext *s, int base_channel)
align_get_bits(&s->gb); // byte align
skip_bits(&s->gb, 16); // nAUXCRC16
- // additional data (reserved, cf. ETSI TS 102 114 V1.4.1)
- if ((reserved = (aux_data_end - get_bits_count(&s->gb))) < 0) {
- av_log(s->avctx, AV_LOG_ERROR,
- "Overread auxiliary data by %d bits\n", -reserved);
- return AVERROR_INVALIDDATA;
- } else if (reserved) {
+ /*
+ * additional data (reserved, cf. ETSI TS 102 114 V1.4.1)
+ *
+ * Note: don't check for overreads, aux_data_count can't be trusted.
+ */
+ if ((reserved = (aux_data_end - get_bits_count(&s->gb))) > 0) {
avpriv_request_sample(s->avctx,
"Core auxiliary data reserved content");
skip_bits_long(&s->gb, reserved);