avcodec/flacenc: Fix Invalid Rice order
authorGeorge Boyle <george@thebuds.net>
Tue, 16 Jun 2015 07:25:01 +0000 (08:25 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 16 Jun 2015 10:55:20 +0000 (12:55 +0200)
commit2469ed32c81ebf2347e6883091c566724b286167
tree0e7223cbbecb90eed46541d809b656fd42ce32d0
parent202188a26c1a860355894020fe7a29598b5bb9c9
avcodec/flacenc: Fix Invalid Rice order

Fixes ticket #4628.

The problem arose, in the sample file at least, in the last block where the
minimum and maximum Rice partition orders were both 0. In that case, and any
other where pmax == pmin, the original UINT32_MAX placeholder value for
bits[opt_porder] was getting overwritten before the comparison to check if the
current partition order is a new optimal, so the correct partition order and
RiceContext params were not being set.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/flacenc.c