summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/rscc.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/rscc.c b/libavcodec/rscc.c
index f270cd5351..dae5e84634 100644
--- a/libavcodec/rscc.c
+++ b/libavcodec/rscc.c
@@ -157,6 +157,12 @@ static int rscc_decode_frame(AVCodecContext *avctx, void *data,
/* Read number of tiles, and allocate the array */
tiles_nb = bytestream2_get_le16(gbc);
+
+ if (tiles_nb == 0) {
+ av_log(avctx, AV_LOG_DEBUG, "no tiles\n");
+ return avpkt->size;
+ }
+
av_fast_malloc(&ctx->tiles, &ctx->tiles_size,
tiles_nb * sizeof(*ctx->tiles));
if (!ctx->tiles) {