diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index 3d825fe193..e6c353df0e 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -693,6 +693,9 @@ static void new_pes_packet(PESContext *pes, AVPacket *pkt) static uint64_t get_bits64(GetBitContext *gb, int bits) { uint64_t ret = 0; + + if (get_bits_left(gb) < bits) + return AV_NOPTS_VALUE; while (bits > 17) { ret <<= 17; ret |= get_bits(gb, 17);