Signed-off-by: Florian Mickler <flor...@mickler.org>
CC: Mauro Carvalho Chehab <mche...@infradead.org>
CC: linux-media@vger.kernel.org
CC: linux-ker...@vger.kernel.org
CC: Greg Kroah-Hartman <g...@kroah.com>
CC: Rafael J. Wysocki <r...@sisk.pl>
CC: Maciej Rutecki <maciej.rute...@gmail.com>
CC: Oliver Neukum <oli...@neukum.org>
CC: Jack Stone <jwjst...@fastmail.fm>
---
 drivers/media/dvb/dvb-usb/dib0700_core.c |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/drivers/media/dvb/dvb-usb/dib0700_core.c 
b/drivers/media/dvb/dvb-usb/dib0700_core.c
index 77a3060..3ad18ce 100644
--- a/drivers/media/dvb/dvb-usb/dib0700_core.c
+++ b/drivers/media/dvb/dvb-usb/dib0700_core.c
@@ -698,6 +698,7 @@ static int dib0700_probe(struct usb_interface *intf,
                const struct usb_device_id *id)
 {
        int i;
+       int ret;
        struct dvb_usb_device *dev;
 
        for (i = 0; i < dib0700_device_count; i++)
@@ -706,8 +707,10 @@ static int dib0700_probe(struct usb_interface *intf,
                        struct dib0700_state *st = dev->priv;
                        u32 hwversion, romversion, fw_version, fwtype;
 
-                       dib0700_get_version(dev, &hwversion, &romversion,
+                       ret = dib0700_get_version(dev, &hwversion, &romversion,
                                &fw_version, &fwtype);
+                       if (ret < 0)
+                               goto out;
 
                        deb_info("Firmware version: %x, %d, 0x%x, %d\n",
                                hwversion, romversion, fw_version, fwtype);
@@ -721,11 +724,15 @@ static int dib0700_probe(struct usb_interface *intf,
                        else
                                dev->props.rc.core.bulk_mode = false;
 
-                       dib0700_rc_setup(dev);
+                       ret = dib0700_rc_setup(dev);
+                       if (ret)
+                               goto out;
 
                        return 0;
+out:
+                       dvb_usb_device_exit();
+                       return ret;
                }
-
        return -ENODEV;
 }
 
-- 
1.7.4.rc3

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to