Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Converse <alex.converse@gmail.com>2012-03-21 21:11:02 +0400
committerAlex Converse <alex.converse@gmail.com>2012-03-24 01:56:44 +0400
commita237b38021cd3009cc78eeb974b596085f2fe393 (patch)
tree85ee453dd81c5ac7779943e6d94f1c3014eee8e2 /libavcodec/aacps.c
parent7beec7e29df051ce586e519861ac3203d36d8cf5 (diff)
aac: Reset PS parameters on header decode failure.
If the next header frame codes zero envelopes the previous frame's values will be used. Consequently the invalid values must be cleared. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
Diffstat (limited to 'libavcodec/aacps.c')
-rw-r--r--libavcodec/aacps.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/aacps.c b/libavcodec/aacps.c
index 3da912c6c7..6c9dcf2f1b 100644
--- a/libavcodec/aacps.c
+++ b/libavcodec/aacps.c
@@ -275,6 +275,10 @@ int ff_ps_read_data(AVCodecContext *avctx, GetBitContext *gb_host, PSContext *ps
err:
ps->start = 0;
skip_bits_long(gb_host, bits_left);
+ memset(ps->iid_par, 0, sizeof(ps->iid_par));
+ memset(ps->icc_par, 0, sizeof(ps->icc_par));
+ memset(ps->ipd_par, 0, sizeof(ps->ipd_par));
+ memset(ps->opd_par, 0, sizeof(ps->opd_par));
return bits_left;
}