On 12/18/11, Janne Grunau <janne-li...@jannau.net> 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) {

FPE happense here.
>>          av_log(avctx, AV_LOG_ERROR,
>>                 "Resolution larger than buffer size. Invalid header?\n");
>
> ok queued

There is no point for cljr to be the only codec which check if height
or weight are 0.
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to