summaryrefslogtreecommitdiff
path: root/libavformat/mxfenc.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/mxfenc.c')
-rw-r--r--libavformat/mxfenc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c
index d60ffceeee..833f53aefb 100644
--- a/libavformat/mxfenc.c
+++ b/libavformat/mxfenc.c
@@ -1560,6 +1560,7 @@ static int mxf_interleave_get_packet(AVFormatContext *s, AVPacket *out, AVPacket
pktl = s->packet_buffer;
if (s->nb_streams != stream_count) {
AVPacketList *first = NULL;
+ AVPacketList *last = NULL;
// find first packet in edit unit
while (pktl) {
AVStream *st = s->streams[pktl->pkt.stream_index];
@@ -1567,8 +1568,11 @@ static int mxf_interleave_get_packet(AVFormatContext *s, AVPacket *out, AVPacket
break;
else if (!first)
first = pktl;
+ last = pktl;
pktl = pktl->next;
}
+ if (last)
+ last->next = NULL;
// purge packet queue
while (pktl) {
AVPacketList *next = pktl->next;