Commit 1f0c92d6 authored by Reimar Döffinger's avatar Reimar Döffinger

xbmdec: print more details on decode error.

Makes debugging issues easier.
Signed-off-by: 's avatarReimar Döffinger <Reimar.Doeffinger@gmx.de>
parent 20044cd9
...@@ -57,8 +57,10 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data, ...@@ -57,8 +57,10 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data,
int number, len; int number, len;
ptr += strcspn(ptr, "#"); 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; return AVERROR_INVALIDDATA;
}
len = strlen(name); len = strlen(name);
if ((len > 6) && !avctx->height && !memcmp(name + len - 7, "_height", 7)) { if ((len > 6) && !avctx->height && !memcmp(name + len - 7, "_height", 7)) {
...@@ -66,6 +68,7 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data, ...@@ -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)) { } else if ((len > 5) && !avctx->width && !memcmp(name + len - 6, "_width", 6)) {
avctx->width = number; avctx->width = number;
} else { } else {
av_log(avctx, AV_LOG_ERROR, "Unknown define '%s'\n", name);
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
ptr += strcspn(ptr, "\n\r") + 1; ptr += strcspn(ptr, "\n\r") + 1;
...@@ -94,6 +97,7 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data, ...@@ -94,6 +97,7 @@ static int xbm_decode_frame(AVCodecContext *avctx, void *data,
val = (val << 4) + convert(*ptr); val = (val << 4) + convert(*ptr);
*dst++ = av_reverse[val]; *dst++ = av_reverse[val];
} else { } else {
av_log(avctx, AV_LOG_ERROR, "Unexpected data at '%.8s'\n", ptr);
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment