mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Merge commit '071e29af4d383bdb44d0c87416dee3e4bb597936'
* commit '071e29af4d383bdb44d0c87416dee3e4bb597936': vmnc: Use meaningful return values Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
5a7a902ac3
@ -259,7 +259,7 @@ static int decode_hextile(VmncContext *c, uint8_t* dst, GetByteContext *gb,
|
|||||||
for (i = 0; i < w; i += 16, dst2 += 16 * bpp) {
|
for (i = 0; i < w; i += 16, dst2 += 16 * bpp) {
|
||||||
if (bytestream2_get_bytes_left(gb) <= 0) {
|
if (bytestream2_get_bytes_left(gb) <= 0) {
|
||||||
av_log(c->avctx, AV_LOG_ERROR, "Premature end of data!\n");
|
av_log(c->avctx, AV_LOG_ERROR, "Premature end of data!\n");
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
if (i + 16 > w)
|
if (i + 16 > w)
|
||||||
bw = w - i;
|
bw = w - i;
|
||||||
@ -267,7 +267,7 @@ static int decode_hextile(VmncContext *c, uint8_t* dst, GetByteContext *gb,
|
|||||||
if (flags & HT_RAW) {
|
if (flags & HT_RAW) {
|
||||||
if (bytestream2_get_bytes_left(gb) < bw * bh * bpp) {
|
if (bytestream2_get_bytes_left(gb) < bw * bh * bpp) {
|
||||||
av_log(c->avctx, AV_LOG_ERROR, "Premature end of data!\n");
|
av_log(c->avctx, AV_LOG_ERROR, "Premature end of data!\n");
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
paint_raw(dst2, bw, bh, gb, bpp, c->bigendian, stride);
|
paint_raw(dst2, bw, bh, gb, bpp, c->bigendian, stride);
|
||||||
} else {
|
} else {
|
||||||
@ -284,7 +284,7 @@ static int decode_hextile(VmncContext *c, uint8_t* dst, GetByteContext *gb,
|
|||||||
|
|
||||||
if (bytestream2_get_bytes_left(gb) < rects * (color * bpp + 2)) {
|
if (bytestream2_get_bytes_left(gb) < rects * (color * bpp + 2)) {
|
||||||
av_log(c->avctx, AV_LOG_ERROR, "Premature end of data!\n");
|
av_log(c->avctx, AV_LOG_ERROR, "Premature end of data!\n");
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
for (k = 0; k < rects; k++) {
|
for (k = 0; k < rects; k++) {
|
||||||
if (color)
|
if (color)
|
||||||
@ -380,7 +380,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
|
|||||||
av_log(avctx, AV_LOG_ERROR,
|
av_log(avctx, AV_LOG_ERROR,
|
||||||
"Premature end of data! (need %i got %i)\n",
|
"Premature end of data! (need %i got %i)\n",
|
||||||
2 + w * h * c->bpp2 * 2, size_left);
|
2 + w * h * c->bpp2 * 2, size_left);
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
bytestream2_skip(gb, 2);
|
bytestream2_skip(gb, 2);
|
||||||
c->cur_w = w;
|
c->cur_w = w;
|
||||||
@ -436,7 +436,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
|
|||||||
if (c->bigendian & (~1)) {
|
if (c->bigendian & (~1)) {
|
||||||
av_log(avctx, AV_LOG_INFO,
|
av_log(avctx, AV_LOG_INFO,
|
||||||
"Invalid header: bigendian flag = %i\n", c->bigendian);
|
"Invalid header: bigendian flag = %i\n", c->bigendian);
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
//skip the rest of pixel format data
|
//skip the rest of pixel format data
|
||||||
bytestream2_skip(gb, 13);
|
bytestream2_skip(gb, 13);
|
||||||
@ -449,13 +449,13 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
|
|||||||
av_log(avctx, AV_LOG_ERROR,
|
av_log(avctx, AV_LOG_ERROR,
|
||||||
"Incorrect frame size: %ix%i+%ix%i of %ix%i\n",
|
"Incorrect frame size: %ix%i+%ix%i of %ix%i\n",
|
||||||
w, h, dx, dy, c->width, c->height);
|
w, h, dx, dy, c->width, c->height);
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
if (size_left < w * h * c->bpp2) {
|
if (size_left < w * h * c->bpp2) {
|
||||||
av_log(avctx, AV_LOG_ERROR,
|
av_log(avctx, AV_LOG_ERROR,
|
||||||
"Premature end of data! (need %i got %i)\n",
|
"Premature end of data! (need %i got %i)\n",
|
||||||
w * h * c->bpp2, size_left);
|
w * h * c->bpp2, size_left);
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
paint_raw(outptr, w, h, gb, c->bpp2, c->bigendian,
|
paint_raw(outptr, w, h, gb, c->bpp2, c->bigendian,
|
||||||
frame->linesize[0]);
|
frame->linesize[0]);
|
||||||
@ -465,11 +465,11 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
|
|||||||
av_log(avctx, AV_LOG_ERROR,
|
av_log(avctx, AV_LOG_ERROR,
|
||||||
"Incorrect frame size: %ix%i+%ix%i of %ix%i\n",
|
"Incorrect frame size: %ix%i+%ix%i of %ix%i\n",
|
||||||
w, h, dx, dy, c->width, c->height);
|
w, h, dx, dy, c->width, c->height);
|
||||||
return -1;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
res = decode_hextile(c, outptr, gb, w, h, frame->linesize[0]);
|
res = decode_hextile(c, outptr, gb, w, h, frame->linesize[0]);
|
||||||
if (res < 0)
|
if (res < 0)
|
||||||
return -1;
|
return res;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
av_log(avctx, AV_LOG_ERROR, "Unsupported block type 0x%08X\n", enc);
|
av_log(avctx, AV_LOG_ERROR, "Unsupported block type 0x%08X\n", enc);
|
||||||
|
Loading…
Reference in New Issue
Block a user