[FFmpeg-cvslog] avcodec/jpeg2000dec: check transform equality in MCT

Michael Niedermayer git at videolan.org
Tue Dec 24 04:00:53 CET 2013


ffmpeg | branch: release/2.0 | Michael Niedermayer <michaelni at gmx.at> | Mon Aug 19 03:33:40 2013 +0200| [f684bbf224dfccac3a5d4fab0ae51ffddd142b73] | committer: Michael Niedermayer

avcodec/jpeg2000dec: check transform equality in MCT

Fixes null pointer dereference
Fixes Ticket2843

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
(cherry picked from commit ac3b01a9c0607961f4540fe62040833870f5deb1)

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f684bbf224dfccac3a5d4fab0ae51ffddd142b73
---

 libavcodec/jpeg2000dec.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c
index 2c00a69..4fe9136 100644
--- a/libavcodec/jpeg2000dec.c
+++ b/libavcodec/jpeg2000dec.c
@@ -1135,6 +1135,12 @@ static void mct_decode(Jpeg2000DecoderContext *s, Jpeg2000Tile *tile)
     int32_t *src[3],  i0,  i1,  i2;
     float   *srcf[3], i0f, i1f, i2f;
 
+    for (i = 1; i < 3; i++)
+        if (tile->codsty[0].transform != tile->codsty[i].transform) {
+            av_log(s->avctx, AV_LOG_ERROR, "Transforms mismatch, MCT not supported\n");
+            return;
+        }
+
     for (i = 0; i < 3; i++)
         if (tile->codsty[0].transform == FF_DWT97)
             srcf[i] = tile->comp[i].f_data;



More information about the ffmpeg-cvslog mailing list