[media] mn88472: Fix possible leak in mn88472_init()
authorChristian Engelmayer <cengelma@gmx.at>
Sat, 2 May 2015 21:59:29 +0000 (18:59 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Tue, 12 May 2015 16:26:30 +0000 (13:26 -0300)
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>
drivers/staging/media/mn88472/mn88472.c

index a4cfcf5..6863c43 100644 (file)
@@ -344,12 +344,12 @@ static int mn88472_init(struct dvb_frontend *fe)
        if (ret) {
                dev_err(&client->dev,
                                "parity reg read failed=%d\n", ret);
-               goto err;
+               goto firmware_release;
        }
        if (tmp & 0x10) {
                dev_err(&client->dev,
                                "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);