[media] gpsca: remove the risk of a division by zero
authorLuis de Bethencourt <luis@debethencourt.com>
Mon, 9 Feb 2015 10:16:25 +0000 (07:16 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Tue, 10 Feb 2015 23:38:40 +0000 (21:38 -0200)
As reported by Peter Kovar, there's a potential risk of a division by
zero on calls to jpeg_set_qual() when quality is zero.

As quality can't be 0 or lower than that, add an extra clause to cover
this special case.

Signed-off-by: Luis de Bethencourt <luis.bg@samsung.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/usb/gspca/topro.c

index 5fcd1ee..c70ff40 100644 (file)
@@ -969,7 +969,9 @@ static void jpeg_set_qual(u8 *jpeg_hdr,
 {
        int i, sc;
 
-       if (quality < 50)
+       if (quality <= 0)
+               sc = 5000;
+       else if (quality < 50)
                sc = 5000 / quality;
        else
                sc = 200 - quality * 2;