summaryrefslogtreecommitdiff
path: root/libavcodec/xbmdec.c
diff options
context:
space:
mode:
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>2012-04-29 15:37:00 +0200
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>2012-05-01 23:30:03 +0200
commit1f0c92d68bab52c852fda5a5669def27a57eaa97 (patch)
treea7658b84b59fa9c67da9800d0cc8ef234ec499de /libavcodec/xbmdec.c
parent20044cd9a9281275d84546e9efa9bb5ac9df1fbe (diff)
xbmdec: print more details on decode error.
Makes debugging issues easier. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Diffstat (limited to 'libavcodec/xbmdec.c')
-rw-r--r--libavcodec/xbmdec.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/libavcodec/xbmdec.c b/libavcodec/xbmdec.c
index cc0d6c9d00..629a636e6a 100644
--- a/libavcodec/xbmdec.c
+++ b/libavcodec/xbmdec.c
@@ -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;
}
}