[SCM] libav/experimental: Avoid segfault on ffmpeg "buffer flush" in mpeg12.c patch by (Wolfram Gloger <wmglo at dent dot med dot uni-muenchen dot de>)

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:41:00 UTC 2013


The following commit has been merged in the experimental branch:
commit 6cfe51d9dab860515bf1bb6fb703dd5bddeeb4e7
Author: Wolfram Gloger <wmglo at dent.med.uni-muenchen.de>
Date:   Fri Jul 16 18:36:39 2004 +0000

    Avoid segfault on ffmpeg "buffer flush" in mpeg12.c patch by (Wolfram Gloger <wmglo at dent dot med dot uni-muenchen dot de>)
    
    Originally committed as revision 3324 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/mpeg12.c b/libavcodec/mpeg12.c
index 9acdd2e..5a2df29 100644
--- a/libavcodec/mpeg12.c
+++ b/libavcodec/mpeg12.c
@@ -2769,12 +2769,14 @@ static int mpeg_decode_frame(AVCodecContext *avctx,
     MpegEncContext *s2 = &s->mpeg_enc_ctx;
     dprintf("fill_buffer\n");
 
-    /* special case for last picture */
-    if (buf_size == 0 && s2->low_delay==0 && s2->next_picture_ptr) {
-        *picture= *(AVFrame*)s2->next_picture_ptr;
-        s2->next_picture_ptr= NULL;
+    if (buf_size == 0) {
+	/* special case for last picture */
+	if (s2->low_delay==0 && s2->next_picture_ptr) {
+	    *picture= *(AVFrame*)s2->next_picture_ptr;
+	    s2->next_picture_ptr= NULL;
 
-        *data_size = sizeof(AVFrame);
+	    *data_size = sizeof(AVFrame);
+	}
         return 0;
     }
 

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list