mirror of https://git.ffmpeg.org/ffmpeg.git
xbmdec: print more details on decode error.
Makes debugging issues easier. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
This commit is contained in:
parent
20044cd9a9
commit
1f0c92d68b
|
@ -57,8 +57,10 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data,
|
|||
int number, len;
|
||||
|
||||
ptr += strcspn(ptr, "#");
|
||||
if (sscanf(ptr, "#define %256s %u", name, &number) != 2)
|
||||
if (sscanf(ptr, "#define %256s %u", name, &number) != 2) {
|
||||
av_log(avctx, AV_LOG_ERROR, "Unexpected preprocessor directive\n");
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
|
||||
len = strlen(name);
|
||||
if ((len > 6) && !avctx->height && !memcmp(name + len - 7, "_height", 7)) {
|
||||
|
@ -66,6 +68,7 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data,
|
|||
} else if ((len > 5) && !avctx->width && !memcmp(name + len - 6, "_width", 6)) {
|
||||
avctx->width = number;
|
||||
} else {
|
||||
av_log(avctx, AV_LOG_ERROR, "Unknown define '%s'\n", name);
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
ptr += strcspn(ptr, "\n\r") + 1;
|
||||
|
@ -94,6 +97,7 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data,
|
|||
val = (val << 4) + convert(*ptr);
|
||||
*dst++ = av_reverse[val];
|
||||
} else {
|
||||
av_log(avctx, AV_LOG_ERROR, "Unexpected data at '%.8s'\n", ptr);
|
||||
return AVERROR_INVALIDDATA;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue