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

Reply via email to