From 20769d9349ba598822334d666ef1f3e387df2dff Mon Sep 17 00:00:00 2001
From: Michael Niedermayer <michaelni@gmx.at>
Date: Mon, 11 Nov 2013 19:51:12 +0100
Subject: [PATCH] avformat/electronicarts: check chunk size.

Fix infinite loop

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
---
 libavformat/electronicarts.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libavformat/electronicarts.c b/libavformat/electronicarts.c
index 97c19c932a..3694a02176 100644
--- a/libavformat/electronicarts.c
+++ b/libavformat/electronicarts.c
@@ -361,6 +361,11 @@ static int process_ea_header(AVFormatContext *s)
         if (ea->big_endian)
             size = av_bswap32(size);
 
+        if (size < 8) {
+            av_log(s, AV_LOG_ERROR, "chunk size too small\n");
+            return AVERROR_INVALIDDATA;
+        }
+
         switch (blockid) {
         case ISNh_TAG:
             if (avio_rl32(pb) != EACS_TAG) {