[FFmpeg-cvslog] lavfi/showinfo: check plane count before dereferencing.

Clément Bœsch git at videolan.org
Wed Dec 12 02:58:47 CET 2012


ffmpeg | branch: master | Clément Bœsch <ubitux at gmail.com> | Wed Dec 12 02:55:10 2012 +0100| [9138f6da4a3ee0d11947b8593db6b6b05e53fbae] | committer: Clément Bœsch

lavfi/showinfo: check plane count before dereferencing.

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

 libavfilter/vf_showinfo.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavfilter/vf_showinfo.c b/libavfilter/vf_showinfo.c
index 1cad3c9..f91721d 100644
--- a/libavfilter/vf_showinfo.c
+++ b/libavfilter/vf_showinfo.c
@@ -50,7 +50,7 @@ static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *frame)
     uint32_t plane_checksum[4] = {0}, checksum = 0;
     int i, plane, vsub = desc->log2_chroma_h;
 
-    for (plane = 0; frame->data[plane] && plane < 4; plane++) {
+    for (plane = 0; plane < 4 && frame->data[plane]; plane++) {
         int64_t linesize = av_image_get_linesize(frame->format, frame->video->w, plane);
         uint8_t *data = frame->data[plane];
         int h = plane == 1 || plane == 2 ? inlink->h >> vsub : inlink->h;
@@ -80,7 +80,7 @@ static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *frame)
            av_get_picture_type_char(frame->video->pict_type),
            checksum, plane_checksum[0]);
 
-    for (plane = 1; frame->data[plane] && plane < 4; plane++)
+    for (plane = 1; plane < 4 && frame->data[plane]; plane++)
         av_log(ctx, AV_LOG_INFO, " %08X", plane_checksum[plane]);
     av_log(ctx, AV_LOG_INFO, "]\n");
 



More information about the ffmpeg-cvslog mailing list