avcodec/ass_split: Change order of operations in ass_split_section()
authorMichael Niedermayer <michael@niedermayer.cc>
Thu, 17 Nov 2016 16:45:03 +0000 (17:45 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Thu, 17 Nov 2016 17:05:18 +0000 (18:05 +0100)
This matches the other branch
Fixes out of array read
Fixes: 4d142ca76d39fe685effcf5017098723/asan_heap-oob_31ae824_8611_348fdb64f9009b63c8a8eae9a0e497c5.mkv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/ass_split.c

index d3e8a8d..872528b 100644 (file)
@@ -275,7 +275,7 @@ static const char *ass_split_section(ASSSplitContext *ctx, const char *buf)
         }
         if (section->format_header && !order) {
             len = strlen(section->format_header);
-            if (buf[len] == ':' && !strncmp(buf, section->format_header, len)) {
+            if (!strncmp(buf, section->format_header, len) && buf[len] == ':') {
                 buf += len + 1;
                 while (!is_eol(*buf)) {
                     buf = skip_space(buf);