summaryrefslogtreecommitdiff
path: root/libavformat/au.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/au.c')
-rw-r--r--libavformat/au.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/au.c b/libavformat/au.c
index 3a83d283bb..bb9d5d5b56 100644
--- a/libavformat/au.c
+++ b/libavformat/au.c
@@ -145,6 +145,11 @@ static int au_read_header(AVFormatContext *s)
return AVERROR_INVALIDDATA;
}
+ if (channels == 0 || channels > 64) {
+ av_log(s, AV_LOG_ERROR, "Invalid number of channels %d\n", channels);
+ return AVERROR_INVALIDDATA;
+ }
+
if (size >= 24) {
/* skip unused data */
avio_skip(pb, size - 24);