[media] s5k6aa: off by one in s5k6aa_enum_frame_interval()
authorDan Carpenter <dan.carpenter@oracle.com>
Fri, 23 Aug 2013 08:33:06 +0000 (05:33 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Sat, 24 Aug 2013 07:54:09 +0000 (04:54 -0300)
The check is off by one so we could read one space past the end of the
array.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/i2c/s5k6aa.c

index 789c02a6ca1a3ee46f775d0212209d103bb1c88c..629a5cdadd3ad8c3673296ce488c054147cc7843 100644 (file)
@@ -1003,7 +1003,7 @@ static int s5k6aa_enum_frame_interval(struct v4l2_subdev *sd,
        const struct s5k6aa_interval *fi;
        int ret = 0;
 
-       if (fie->index > ARRAY_SIZE(s5k6aa_intervals))
+       if (fie->index >= ARRAY_SIZE(s5k6aa_intervals))
                return -EINVAL;
 
        v4l_bound_align_image(&fie->width, S5K6AA_WIN_WIDTH_MIN,