Browse code

avformat/pva: Check for EOF before retrying in read_part_of_packet()

Fixes: Infinite loop
Fixes: pva-4b1835dbc2027bf3c567005dcc78e85199240d06

Found-by: Paul Ch <paulcher@icloud.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 9807d3976be0e92e4ece3b4b1701be894cd7c2e1)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>

Michael Niedermayer authored on 2018/07/04 05:14:42
Showing 1 changed files
... ...
@@ -134,6 +134,10 @@ recover:
134 134
             pes_flags              = avio_rb16(pb);
135 135
             pes_header_data_length = avio_r8(pb);
136 136
 
137
+            if (avio_feof(pb)) {
138
+                return AVERROR_EOF;
139
+            }
140
+
137 141
             if (pes_signal != 1 || pes_header_data_length == 0) {
138 142
                 pva_log(s, AV_LOG_WARNING, "expected non empty signaled PES packet, "
139 143
                                           "trying to recover\n");