|
|
@@ -171,7 +171,8 @@ static int pcx_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, |
|
|
|
|
|
|
|
|
if (buf_size < 769) { |
|
|
if (buf_size < 769) { |
|
|
av_log(avctx, AV_LOG_ERROR, "File is too short\n"); |
|
|
av_log(avctx, AV_LOG_ERROR, "File is too short\n"); |
|
|
ret = buf_size; |
|
|
|
|
|
|
|
|
ret = avctx->err_recognition & AV_EF_EXPLODE ? |
|
|
|
|
|
AVERROR_INVALIDDATA : buf_size; |
|
|
goto end; |
|
|
goto end; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@@ -187,7 +188,8 @@ static int pcx_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, |
|
|
} |
|
|
} |
|
|
if (*buf++ != 12) { |
|
|
if (*buf++ != 12) { |
|
|
av_log(avctx, AV_LOG_ERROR, "expected palette after image data\n"); |
|
|
av_log(avctx, AV_LOG_ERROR, "expected palette after image data\n"); |
|
|
ret = buf_size; |
|
|
|
|
|
|
|
|
ret = avctx->err_recognition & AV_EF_EXPLODE ? |
|
|
|
|
|
AVERROR_INVALIDDATA : buf_size; |
|
|
goto end; |
|
|
goto end; |
|
|
} |
|
|
} |
|
|
} else if (nplanes == 1) { /* all packed formats, max. 16 colors */ |
|
|
} else if (nplanes == 1) { /* all packed formats, max. 16 colors */ |
|
|
|