]> granicus.if.org Git - openjpeg/commitdiff
[trunk] Import patch from sumatrapdf team. This handle testcase 1851.pdf.SIGSEGV...
authorMathieu Malaterre <mathieu.malaterre@gmail.com>
Wed, 26 Feb 2014 11:25:27 +0000 (11:25 +0000)
committerMathieu Malaterre <mathieu.malaterre@gmail.com>
Wed, 26 Feb 2014 11:25:27 +0000 (11:25 +0000)
Update issue 225

src/lib/openjp2/jp2.c

index 978f3c574e400d35cee9314f1406294ae2b08c3c..544ce91b916ff22d346c66bc75fee455df426ae8 100644 (file)
@@ -1819,6 +1819,12 @@ OPJ_BOOL opj_jp2_read_header_procedure(  opj_jp2_t *jp2,
                        opj_free(l_current_data);
                        return OPJ_FALSE;
                }
+               /* testcase 1851.pdf.SIGSEGV.ce9.948 */
+               else if (box.length < l_nb_bytes_read) {
+                       opj_event_msg(p_manager, EVT_ERROR, "invalid box size %d (%x)\n", box.length, box.type);
+                       opj_free(l_current_data);
+                       return OPJ_FALSE;
+               }
 
                l_current_handler = opj_jp2_find_handler(box.type);
                l_current_data_size = box.length - l_nb_bytes_read;