[SCM] libav/experimental: Make avfilter_start_frame() invoke avfilter_get_video_buffer() on the link rather than avfilter_default_get_video_buffer().

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:14:36 UTC 2013


The following commit has been merged in the experimental branch:
commit 5a9dd3de63db95704708350bc1c5abb74944cda2
Author: Stefano Sabatini <stefano.sabatini-lala at poste.it>
Date:   Tue Aug 24 08:37:54 2010 +0000

    Make avfilter_start_frame() invoke avfilter_get_video_buffer() on the
    link rather than avfilter_default_get_video_buffer().
    
    This is required as the buffer requested may be greater than the
    buffer allocated locally by avfilter_default_get_video_buffer(), for
    example if in filterchain there is a pad filter (like in "fifo,pad").
    
    In that case the pad filter will try to write beyond the data of the
    allocated buffer, resulting in a crash.
    
    Originally committed as revision 24895 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index cfdaa82..d787f92 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -316,7 +316,7 @@ void avfilter_start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
                 picref->perms,
                 link_dpad(link).min_perms, link_dpad(link).rej_perms);
 
-        link->cur_buf = avfilter_default_get_video_buffer(link, dst->min_perms, link->w, link->h);
+        link->cur_buf = avfilter_get_video_buffer(link, dst->min_perms, link->w, link->h);
         link->src_buf = picref;
         avfilter_copy_buffer_ref_props(link->cur_buf, link->src_buf);
     }

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list