From: Mauro Carvalho Chehab Date: Tue, 28 Apr 2015 22:39:53 +0000 (-0300) Subject: [media] zc3xx: don't go past quality array X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=b036f1cb6e268f2a8c4433c3c26cbef95642b79d;p=deliverable%2Flinux.git [media] zc3xx: don't go past quality array drivers/media/usb/gspca/zc3xx.c:6363 zcxx_s_ctrl() error: buffer overflow 'jpeg_qual' 3 <= 3 Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/usb/gspca/zc3xx.c b/drivers/media/usb/gspca/zc3xx.c index d3e1b6d8bf49..3762a045f744 100644 --- a/drivers/media/usb/gspca/zc3xx.c +++ b/drivers/media/usb/gspca/zc3xx.c @@ -6360,7 +6360,7 @@ static int zcxx_s_ctrl(struct v4l2_ctrl *ctrl) if (ctrl->val <= jpeg_qual[i]) break; } - if (i > 0 && i == qual && ctrl->val < jpeg_qual[i]) + if (i == ARRAY_SIZE(jpeg_qual) || (i > 0 && i == qual && ctrl->val < jpeg_qual[i])) i--; /* With high quality settings we need max bandwidth */