summaryrefslogtreecommitdiffstats
path: root/drivers/media/usb/dvb-usb/af9005.c
diff options
context:
space:
mode:
authorNavid Emamdoost <navid.emamdoost@gmail.com>2019-10-09 17:01:47 +0200
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>2019-10-24 23:31:51 +0200
commit2289adbfa559050d2a38bcd9caac1c18b800e928 (patch)
treecefd0e1f1c272b96b60e7487b174d88893ab3d12 /drivers/media/usb/dvb-usb/af9005.c
parentmedia: cec-pin: add 'received' callback (diff)
downloadlinux-2289adbfa559050d2a38bcd9caac1c18b800e928.tar.xz
linux-2289adbfa559050d2a38bcd9caac1c18b800e928.zip
media: usb: fix memory leak in af9005_identify_state
In af9005_identify_state when returning -EIO the allocated buffer should be released. Replace the "return -EIO" with assignment into ret and move deb_info() under a check. Fixes: af4e067e1dcf ("V4L/DVB (5625): Add support for the AF9005 demodulator from Afatech") Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'drivers/media/usb/dvb-usb/af9005.c')
-rw-r--r--drivers/media/usb/dvb-usb/af9005.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/media/usb/dvb-usb/af9005.c b/drivers/media/usb/dvb-usb/af9005.c
index 02697d86e8c1..ac93e88d7038 100644
--- a/drivers/media/usb/dvb-usb/af9005.c
+++ b/drivers/media/usb/dvb-usb/af9005.c
@@ -976,8 +976,9 @@ static int af9005_identify_state(struct usb_device *udev,
else if (reply == 0x02)
*cold = 0;
else
- return -EIO;
- deb_info("Identify state cold = %d\n", *cold);
+ ret = -EIO;
+ if (!ret)
+ deb_info("Identify state cold = %d\n", *cold);
err:
kfree(buf);