On 2011-12-18 14:52:13 -0800, Ronald S. Bultje wrote: > Hi, > > On Sun, Dec 18, 2011 at 1:48 PM, Janne Grunau <[email protected]>wrote: > > > On 2011-12-16 04:50:21 +0530, Shitiz Garg wrote: > > > width and height might get passed as 0 and would cause floating point > > > exceptions in decode_frame. > > > Fixes bugzilla #149 > > > --- > > > libavcodec/cljr.c | 5 +++++ > > > 1 files changed, 5 insertions(+), 0 deletions(-) > > > > > > diff --git a/libavcodec/cljr.c b/libavcodec/cljr.c > > > index a5ee738..f40d4d1 100644 > > > --- a/libavcodec/cljr.c > > > +++ b/libavcodec/cljr.c > > > @@ -57,6 +57,11 @@ static int decode_frame(AVCodecContext *avctx, > > > if (p->data[0]) > > > avctx->release_buffer(avctx, p); > > > > > > + if (avctx->height <= 0 || avctx->width <= 0) { > > > + av_log(avctx, AV_LOG_ERROR, "Invalid width or height\n"); > > > + return AVERROR_INVALIDDATA; > > > + } > > > + > > > if (buf_size / avctx->height < avctx->width) { > > > av_log(avctx, AV_LOG_ERROR, > > > "Resolution larger than buffer size. Invalid header?\n"); > > > > ok queued > > > > Shouldn't this use avcodec_set_dimensions()? That checks that automatically > and is shorter.
no, void avcodec_set_dimensions() doesn't check anything Janne _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
