From aa38cff2c6fdc1c0a7245f8a2aef5f6d4d2881d1 Mon Sep 17 00:00:00 2001 From: Janne Grunau Date: Thu, 24 Nov 2011 00:18:33 +0100 Subject: [PATCH] avconv: fix segfault at EOF with delayed pictures At EOF it makes no sense to modify avpkt.{data,size} in output_packet since no data is consumed. Frame threading with more than 1 threads hits the segfault. --- avconv.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/avconv.c b/avconv.c index be870a5273..6f64bc80a4 100644 --- a/avconv.c +++ b/avconv.c @@ -1892,8 +1892,11 @@ static int output_packet(InputStream *ist, if (ret < 0) return ret; - avpkt.data += ret; - avpkt.size -= ret; + // touch data and size only if not EOF + if (pkt) { + avpkt.data += ret; + avpkt.size -= ret; + } if (!got_output) { continue; }