From 031e14ea79eea52987d0abc91b10ab6e398842aa Mon Sep 17 00:00:00 2001
From: Thilo Borgmann <thilo.borgmann@googlemail.com>
Date: Sat, 11 Apr 2009 22:04:52 +0000
Subject: [PATCH] Fix initialization of avpkt in output_packet().

Patch by Thilo Borgmann thilo.surname AT googlemaildotcom.

Originally committed as revision 18451 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 ffmpeg.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index 68f84fe5755..d7c90599d0f 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -1185,24 +1185,22 @@ static int output_packet(AVInputStream *ist, int ist_index,
     int got_subtitle;
     AVPacket avpkt;
 
-    av_init_packet(&avpkt);
-
     if(ist->next_pts == AV_NOPTS_VALUE)
         ist->next_pts= ist->pts;
 
     if (pkt == NULL) {
         /* EOF handling */
+        av_init_packet(&avpkt);
         avpkt.data = NULL;
         avpkt.size = 0;
         goto handle_eof;
+    } else {
+        avpkt = *pkt;
     }
 
     if(pkt->dts != AV_NOPTS_VALUE)
         ist->next_pts = ist->pts = av_rescale_q(pkt->dts, ist->st->time_base, AV_TIME_BASE_Q);
 
-    avpkt.size = pkt->size;
-    avpkt.data = pkt->data;
-
     //while we have more to decode or while the decoder did output something on EOF
     while (avpkt.size > 0 || (!pkt && ist->next_pts != ist->pts)) {
     handle_eof:
-- 
GitLab