On Tue, Nov 19, 2013 at 11:45:20AM +0100, Tim W. wrote: > On 19 Nov 2013, at 01:15, Diego Biurrun <[email protected]> wrote: > > > On Mon, Nov 18, 2013 at 12:41:47PM +0100, Tim Walker wrote: > >> --- a/libavcodec/ac3dec.c > >> +++ b/libavcodec/ac3dec.c > >> @@ -178,9 +178,8 @@ static av_cold int ac3_decode_init(AVCodecContext > >> *avctx) > >> > >> /* allow downmixing to stereo or mono */ > >> - if (avctx->channels > 0 && avctx->request_channels > 0 && > >> - avctx->request_channels < avctx->channels && > >> - avctx->request_channels <= 2) { > >> + if (avctx->request_channels > 0 && avctx->request_channels <= 2 && > >> + avctx->request_channels < avctx->channels) { > >> avctx->channels = avctx->request_channels; > > > > what ensures that avctx->channels is non-negative? (Yes, I wonder why > > that struct member is signed in the first place.) > > > > Diego > > (avctx->request_channels > 0 && avctx->request_channels < avctx->channels) > implies (avctx->channels > 0) or false (so the result is unchanged). > > Would: > > >> if (avctx->request_channels > 0 && avctx->request_channels <= 2 && > >> avctx->channels > avctx->request_channels) { > > > Be clearer?
Never mind, I somehow misread the expression; queueing the patch. Diego _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
