From aa6ee772978b24867d0ade9d80837a91912d8415 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 3 Jul 2014 14:15:36 +0200 Subject: [PATCH] mpegtspacketizer: Don't dereference NULL if we have no PCR yet Can happen sometimes if the duration is requested before we received enough data with a PCR. --- gst/mpegtsdemux/mpegtspacketizer.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gst/mpegtsdemux/mpegtspacketizer.c b/gst/mpegtsdemux/mpegtspacketizer.c index a02cc4bc12..7889c7e600 100644 --- a/gst/mpegtsdemux/mpegtspacketizer.c +++ b/gst/mpegtsdemux/mpegtspacketizer.c @@ -2118,6 +2118,12 @@ mpegts_packetizer_offset_to_ts (MpegTSPacketizer2 * packetizer, packetizer->refoffset; } else { PCROffsetCurrent *current = pcrtable->current; + + if (!current->group) { + PACKETIZER_GROUP_UNLOCK (packetizer); + GST_LOG ("No PCR yet"); + return GST_CLOCK_TIME_NONE; + } /* If doing progressive read, use current */ GST_LOG ("Using current group"); lastpcr = current->group->pcr_offset + current->pending[current->last].pcr;