summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavformat/aiffdec.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavformat/aiffdec.c b/libavformat/aiffdec.c
index 91ef2a4d10..8dbed327b6 100644
--- a/libavformat/aiffdec.c
+++ b/libavformat/aiffdec.c
@@ -116,10 +116,12 @@ static unsigned int get_aiff_header(AVFormatContext *s, int size,
size -= 18;
/* get codec id for AIFF-C */
- if (version == AIFF_C_VERSION1) {
+ if (version == AIFF_C_VERSION1 && size >= 4) {
codec->codec_tag = avio_rl32(pb);
codec->codec_id = ff_codec_get_id(ff_codec_aiff_tags, codec->codec_tag);
size -= 4;
+ } else {
+ version = AIFF;
}
if (version != AIFF_C_VERSION1 || codec->codec_id == AV_CODEC_ID_PCM_S16BE) {