On 06/03/12 17:33, Alex Converse wrote: > From: Michael Niedermayer <[email protected]> > > Set the element to channel vector (e2c_vec) size to be the maximum > number of aac channel elements. This makes it slightly larger than it > needs to be because CCEs are never mapped to output channel locations. > > Also add a check that all input tags (legal or not) will fit. > > Split from FFmpeg commit a8d67efa53dae1d14614e3a7bd4e77e4eab066ab > > Signed-off-by: Alex Converse <[email protected]> > --- > libavcodec/aacdec.c | 5 ++++- > 1 files changed, 4 insertions(+), 1 deletions(-) > > diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c > index 4f94f5f..c7c11c9 100644 > --- a/libavcodec/aacdec.c > +++ b/libavcodec/aacdec.c > @@ -223,10 +223,13 @@ static int count_paired_channels(uint8_t > (*layout_map)[3], int tags, int pos, in > static uint64_t sniff_channel_order(uint8_t (*layout_map)[3], int tags) > { > int i, n, total_non_cc_elements; > - struct elem_to_channel e2c_vec[MAX_ELEM_ID] = {{ 0 }}; > + struct elem_to_channel e2c_vec[4*MAX_ELEM_ID] = {{ 0 }}; > int num_front_channels, num_side_channels, num_back_channels; > uint64_t layout; > > + if (FF_ARRAY_ELEMS(e2c_vec) < tags) > + return 0;
0 ? lu -- Luca Barbato Gentoo/linux http://dev.gentoo.org/~lu_zero _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
