Explorar o código

V4L/DVB (12421): drivers/media/video/gspca: introduce missing kfree

Error handling code following a kmalloc should free the allocated data.

Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Erik Andrén <erik.andren@gmail.com>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Julia Lawall %!s(int64=16) %!d(string=hai) anos
pai
achega
b807d17555
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      drivers/media/video/gspca/m5602/m5602_s5k83a.c

+ 3 - 1
drivers/media/video/gspca/m5602/m5602_s5k83a.c

@@ -178,8 +178,10 @@ sensor_found:
 
 
 	sens_priv->settings =
 	sens_priv->settings =
 	kmalloc(sizeof(s32)*ARRAY_SIZE(s5k83a_ctrls), GFP_KERNEL);
 	kmalloc(sizeof(s32)*ARRAY_SIZE(s5k83a_ctrls), GFP_KERNEL);
-	if (!sens_priv->settings)
+	if (!sens_priv->settings) {
+		kfree(sens_priv);
 		return -ENOMEM;
 		return -ENOMEM;
+	}
 
 
 	sd->gspca_dev.cam.cam_mode = s5k83a_modes;
 	sd->gspca_dev.cam.cam_mode = s5k83a_modes;
 	sd->gspca_dev.cam.nmodes = ARRAY_SIZE(s5k83a_modes);
 	sd->gspca_dev.cam.nmodes = ARRAY_SIZE(s5k83a_modes);