On Fri, Feb 10, 2012 at 03:02:12AM +0000, Paul B Mahol wrote: > > Signed-off-by: Paul B Mahol <[email protected]> > --- > libavcodec/wavpack.c | 49 +++++++++++++++++++++++++++++-------------------- > 1 files changed, 29 insertions(+), 20 deletions(-) > > diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c > index 1098873..bcdbb20 100644 > --- a/libavcodec/wavpack.c > +++ b/libavcodec/wavpack.c > @@ -408,7 +408,8 @@ static inline int > wv_get_value_integer(WavpackFrameContext *s, uint32_t *crc, > > if (s->got_extra_bits && get_bits_left(&s->gb_extra_bits) >= > s->extra_bits) { > S |= get_bits(&s->gb_extra_bits, s->extra_bits); > - *crc = *crc * 9 + (S & 0xffff) * 3 + ((unsigned)S >> 16); > + if (s->avctx->err_recognition & AV_EF_CRCCHECK) > + *crc = *crc * 9 + (S & 0xffff) * 3 + ((unsigned)S >> 16);
I think it's better to calculate CRC in any case and just ignore results where (un)needed. Besides that looks OK. _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
