summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavcodec/flacdec.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libavcodec/flacdec.c b/libavcodec/flacdec.c
index 8c73434912..79c2142237 100644
--- a/libavcodec/flacdec.c
+++ b/libavcodec/flacdec.c
@@ -527,9 +527,10 @@ static int decode_frame(FLACContext *s, int alloc_data_size)
return -1;
}
- if (blocksize_code == 0)
- blocksize = s->min_blocksize;
- else if (blocksize_code == 6)
+ if (blocksize_code == 0) {
+ av_log(s->avctx, AV_LOG_ERROR, "reserved blocksize code: 0\n");
+ return -1;
+ } else if (blocksize_code == 6)
blocksize = get_bits(&s->gb, 8)+1;
else if (blocksize_code == 7)
blocksize = get_bits(&s->gb, 16)+1;