From 1f7705e5b16d83d2ac4bfc48c7b8d6a34bfef20a Mon Sep 17 00:00:00 2001
From: Paul B Mahol <onemda@gmail.com>
Date: Sun, 1 Apr 2018 20:58:48 +0200
Subject: [PATCH] avformat/mpeg: fix logic failure

Signed-off-by: Paul B Mahol <onemda@gmail.com>
---
 libavformat/mpeg.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/libavformat/mpeg.c b/libavformat/mpeg.c
index e3dd404677d..0c507e9f01f 100644
--- a/libavformat/mpeg.c
+++ b/libavformat/mpeg.c
@@ -450,13 +450,14 @@ redo:
             return ret;
 
         startcode = avio_r8(s->pb);
-        if (startcode == 0x0b && avio_r8(s->pb) == 0x77) {
-            startcode = 0x80;
-            m->raw_ac3 = 1;
-            avio_skip(s->pb, -2);
+        m->raw_ac3 = 0;
+        if (startcode == 0x0b) {
+            if (avio_r8(s->pb) == 0x77) {
+                startcode = 0x80;
+                m->raw_ac3 = 1;
+                avio_skip(s->pb, -2);
+            }
         } else {
-            m->raw_ac3 = 0;
-            avio_skip(s->pb, -1);
             len--;
         }
     }
-- 
GitLab