summaryrefslogtreecommitdiff
path: root/libavformat/mpegts.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-12-08 14:58:56 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-12-08 14:58:56 +0100
commit57cee850238488a6088085ae078af17f04f2198a (patch)
tree9551a690983609d59e91e3c63ae4b15114eecb34 /libavformat/mpegts.c
parent7efee140d7d6fe197a73a178314eacd330a8cc77 (diff)
parent096abfa15052977eed93f0b5e01afd2d47c53c1f (diff)
Merge commit '096abfa15052977eed93f0b5e01afd2d47c53c1f'
* commit '096abfa15052977eed93f0b5e01afd2d47c53c1f': parser: fix large overreads bitstream: add get_bits64() to support reading more than 32 bits at once arm: detect cpu features at runtime on Linux Conflicts: libavcodec/parser.c libavformat/mpegts.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/mpegts.c')
-rw-r--r--libavformat/mpegts.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 167194c808..788a59b316 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -714,18 +714,9 @@ static void new_pes_packet(PESContext *pes, AVPacket *pkt)
static uint64_t get_ts64(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);
- bits -= 17;
- }
- ret <<= bits;
- ret |= get_bits(gb, bits);
- return ret;
+ return get_bits64(gb, bits);
}
static int read_sl_header(PESContext *pes, SLConfigDescr *sl, const uint8_t *buf, int buf_size)