[FFmpeg-cvslog] vf_lut: add plane validity check in draw_slice()

Stefano Sabatini git at videolan.org
Sat Jul 2 15:27:09 CEST 2011


ffmpeg | branch: master | Stefano Sabatini <stefano.sabatini-lala at poste.it> | Sat Jul  2 15:06:02 2011 +0200| [2b550beb2299e30d5fc13596c619457c13b49d5f] | committer: Stefano Sabatini

vf_lut: add plane validity check in draw_slice()

The value for inpic->data[plane] with plane >=4 is undefined, and it
will contain in general random data. This change adds a check for
exiting the loop when plane reaches the value 4.

Fix crash (occurring for example with: format=rgba,lut).

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2b550beb2299e30d5fc13596c619457c13b49d5f
---

 libavfilter/vf_lut.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/libavfilter/vf_lut.c b/libavfilter/vf_lut.c
index 8607ee9..b74aa23 100644
--- a/libavfilter/vf_lut.c
+++ b/libavfilter/vf_lut.c
@@ -319,7 +319,7 @@ static void draw_slice(AVFilterLink *inlink, int y, int h, int slice_dir)
         }
     } else {
         /* planar */
-        for (plane = 0; inpic->data[plane]; plane++) {
+        for (plane = 0; plane < 4 && inpic->data[plane]; plane++) {
             int vsub = plane == 1 || plane == 2 ? lut->vsub : 0;
             int hsub = plane == 1 || plane == 2 ? lut->hsub : 0;
 



More information about the ffmpeg-cvslog mailing list