This fixes NULL pointer dereferencing if the codec is forced to
adpcm_thp even though a different one was detected.

Signed-off-by: Andreas Cadhalpun <[email protected]>
---
 libavformat/brstm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/libavformat/brstm.c b/libavformat/brstm.c
index 6ec4d89..e9d64e4 100644
--- a/libavformat/brstm.c
+++ b/libavformat/brstm.c
@@ -392,6 +392,10 @@ static int read_packet(AVFormatContext *s, AVPacket *pkt)
         if (!b->adpc) {
             av_log(s, AV_LOG_ERROR, "adpcm_thp requires ADPC chunk, but none 
was found.\n");
             return AVERROR_INVALIDDATA;
+        if (!b->table) {
+            b->table = av_mallocz(32 * codec->channels);
+            if (!b->table)
+                return AVERROR(ENOMEM);
         }
 
         if (size > (INT_MAX - 32 - 4) ||
-- 
2.6.4

_______________________________________________
ffmpeg-devel mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to