From ebc3488300523dad3da41f420ecfcdddd1d8e9f3 Mon Sep 17 00:00:00 2001 From: Daniel Kang Date: Mon, 10 Jan 2011 00:42:57 +0000 Subject: Check for invalid maxval in pgm decoder, fixes issue 2518. Patch by Daniel Kang, daniel.d.kang at gmail Originally committed as revision 26292 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/pnm.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libavcodec/pnm.c') diff --git a/libavcodec/pnm.c b/libavcodec/pnm.c index 536b344923..43438b7cef 100644 --- a/libavcodec/pnm.c +++ b/libavcodec/pnm.c @@ -140,6 +140,10 @@ int ff_pnm_decode_header(AVCodecContext *avctx, PNMContext * const s) if (avctx->pix_fmt != PIX_FMT_MONOWHITE) { pnm_get(s, buf1, sizeof(buf1)); s->maxval = atoi(buf1); + if (s->maxval <= 0) { + av_log(avctx, AV_LOG_ERROR, "Invalid maxval: %d\n", s->maxval); + return -1; + } if (s->maxval >= 256) { if (avctx->pix_fmt == PIX_FMT_GRAY8) { avctx->pix_fmt = PIX_FMT_GRAY16BE; -- cgit v1.2.3