Commit fe300b2a authored by Carl Eugen Hoyos's avatar Carl Eugen Hoyos

lavc/xpmdec: Allow more colours per character.

Fixes ticket #6234.
parent 8affd753
...@@ -290,10 +290,10 @@ static int ascii2index(const uint8_t *cpixel, int cpp) ...@@ -290,10 +290,10 @@ static int ascii2index(const uint8_t *cpixel, int cpp)
int n = 0, m = 1, i; int n = 0, m = 1, i;
for (i = 0; i < cpp; i++) { for (i = 0; i < cpp; i++) {
if (*p < ' ' || *p > '~') if (*p < ' ' || *p > 0xfe)
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
n += (*p++ - ' ') * m; n += (*p++ - ' ') * m;
m *= 95; m *= 220;
} }
return n; return n;
} }
...@@ -346,7 +346,7 @@ static int xpm_decode_frame(AVCodecContext *avctx, void *data, ...@@ -346,7 +346,7 @@ static int xpm_decode_frame(AVCodecContext *avctx, void *data,
size = 1; size = 1;
for (i = 0; i < cpp; i++) for (i = 0; i < cpp; i++)
size *= 95; size *= 220;
if (ncolors <= 0 || ncolors > size) { if (ncolors <= 0 || ncolors > size) {
av_log(avctx, AV_LOG_ERROR, "invalid number of colors: %d\n", ncolors); av_log(avctx, AV_LOG_ERROR, "invalid number of colors: %d\n", ncolors);
......
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