1
0
mirror of https://git.ffmpeg.org/ffmpeg.git synced 2026-10-24 02:09:03 +03:00
Files
ffmpeg/libavformat
StressTestor c50d6fca7a avformat/mpegts: stop the raw PCR readahead on a short read
mpegts_raw_read_packet() with compute_pcr looks ahead up to
MAX_PACKET_READAHEAD packets for the next PCR, reading 12 bytes of
each candidate into a stack buffer with avio_read() and ignoring the
return value. When the lookahead runs past the end of the file the
buffer keeps whatever it held, uninitialised on the first iteration,
and parse_pcr() is run on it. If those bytes happen to look like a
PCR, the garbage difference becomes pcr_incr and is published as the
duration of this packet and the pts of every later one. On a build
with -ftrivial-auto-var-init=pattern a file ending in a partial
packet yields duration=1716393918470 instead of 27000000.

Stop the readahead when the seek or the read fails. The packet itself
was already read successfully, and the "no next PCR found" fallback
to the previous increment is the designed behaviour for this case, so
failing the packet would be wrong.

Same class as c2394a0ff3 (binka), 29f513af78 (fsb), 4b47405e1c (genh).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: StressTestor <212606152+StressTestor@users.noreply.github.com>
2026-10-21 09:27:17 +00:00
..
…
…
…
…
…
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
2026-08-27 00:11:44 +02:00
2026-03-10 13:52:18 +01:00
…
…
2025-09-08 20:59:31 +00:00
2025-04-13 22:49:21 +02:00
…
…
…
…
2024-03-31 00:08:43 +01:00
2025-08-03 13:48:47 +02:00
…
…
…
…
2026-06-23 19:15:57 +02:00
…
2026-03-10 13:52:18 +01:00
2026-06-23 19:15:57 +02:00
…
…
2026-05-08 09:34:52 +02:00
…
…
…
2026-06-23 19:15:57 +02:00
…
…
…
…
2026-08-21 03:38:24 +00:00
…
2026-03-10 13:52:18 +01:00
…
…
…
…
…
…
…
2024-06-19 10:12:50 -03:00
…
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
2025-06-23 17:19:18 +10:00
…
…
…
2026-08-12 01:14:58 +02:00
…
…
…
…
2026-02-25 02:55:43 +00:00
2025-08-03 13:48:47 +02:00
2024-06-04 11:46:27 +02:00
2024-07-21 16:41:23 +02:00
2026-02-18 08:20:10 +00:00
…
…
2026-10-10 21:41:14 +00:00
…
2026-10-08 14:21:37 +09:00
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
…
2024-04-17 18:31:06 +05:30
2024-05-01 02:57:12 +02:00
2026-03-10 13:52:18 +01:00
…
…
2024-04-06 12:59:56 +02:00
…
2025-08-04 03:59:42 +00:00
…
2025-08-03 13:48:47 +02:00
2026-10-19 19:16:58 +00:00
…
…
2026-04-28 12:29:37 +00:00
…
2024-03-31 00:08:43 +01:00
…
…
2026-03-10 13:52:18 +01:00
…
…
…
…
…
…
…
…
2026-07-10 17:45:09 +00:00
…
…
…
2025-03-28 15:23:28 +01:00
…
…
2024-03-31 00:08:43 +01:00
2026-05-03 13:26:34 +00:00
…
…
2026-09-17 11:02:06 -03:00
…
…
…
…
…
…
…
2024-11-03 10:53:15 +11:00
…
2026-05-03 18:22:46 +02:00
…
…
…
…
…
…
…
…
…
2025-06-23 17:19:18 +10:00
…
…
…
…
…
…
…
2026-08-09 17:24:59 +00:00
…
…
…
…
…
…
2026-03-10 13:52:18 +01:00
…
…
…
…
…
…
2025-08-03 13:48:47 +02:00
…
2024-03-31 00:08:43 +01:00
2026-03-10 13:52:18 +01:00
…
2026-06-23 19:15:57 +02:00
…
…
…
…
…
2026-03-10 13:52:18 +01:00
…
…
2024-07-21 17:02:11 +02:00
…
…
…
2026-10-19 19:16:58 +00:00
…
…
…
…
…
…
…
…
2026-02-25 02:55:43 +00:00
…
2025-08-03 13:48:47 +02:00
…
…
…
…
…
…
…
…