Explorar el Código

[media] mn88472: Fix possible leak in mn88472_init()

Commit 307e95c92257 ("[media] mn88472: implement firmware parity check")
introduced the usage of exit paths that do not free the already allocated
firmware data in case the parity handling fails. Go through the correct
exit paths. Detected by Coverity CID 1295989.

Signed-off-by: Christian Engelmayer <cengelma@gmx.at>
Acked-by: Benjamin Larsson <benjamin@southpole.se>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Christian Engelmayer hace 10 años
padre
commit
59c0d7b1e4
Se han modificado 1 ficheros con 2 adiciones y 2 borrados
  1. 2 2
      drivers/staging/media/mn88472/mn88472.c

+ 2 - 2
drivers/staging/media/mn88472/mn88472.c

@@ -344,12 +344,12 @@ static int mn88472_init(struct dvb_frontend *fe)
 	if (ret) {
 	if (ret) {
 		dev_err(&client->dev,
 		dev_err(&client->dev,
 				"parity reg read failed=%d\n", ret);
 				"parity reg read failed=%d\n", ret);
-		goto err;
+		goto firmware_release;
 	}
 	}
 	if (tmp & 0x10) {
 	if (tmp & 0x10) {
 		dev_err(&client->dev,
 		dev_err(&client->dev,
 				"firmware parity check failed=0x%x\n", tmp);
 				"firmware parity check failed=0x%x\n", tmp);
-		goto err;
+		goto firmware_release;
 	}
 	}
 	dev_err(&client->dev, "firmware parity check succeeded=0x%x\n", tmp);
 	dev_err(&client->dev, "firmware parity check succeeded=0x%x\n", tmp);