V4L/DVB (3743): Fix some more potential oopses
authorAndrew de Quincey <adq_dvb@lidskialf.net>
Thu, 6 Apr 2006 20:05:46 +0000 (17:05 -0300)
committerMauro Carvalho Chehab <mchehab@infradead.org>
Fri, 12 May 2006 22:54:46 +0000 (19:54 -0300)
Spotted a couple more places where it fails to check if
dvb_register_adapter() fails.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
drivers/media/dvb/cinergyT2/cinergyT2.c
drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c

index 71b575d..9325d03 100644 (file)
@@ -902,7 +902,10 @@ static int cinergyt2_probe (struct usb_interface *intf,
                return -ENOMEM;
        }
 
-       dvb_register_adapter(&cinergyt2->adapter, DRIVER_NAME, THIS_MODULE);
+       if ((err = dvb_register_adapter(&cinergyt2->adapter, DRIVER_NAME, THIS_MODULE)) < 0) {
+               kfree(cinergyt2);
+               return err;
+       }
 
        cinergyt2->demux.priv = cinergyt2;
        cinergyt2->demux.filternum = 256;
index 248fdc7..6ceae38 100644 (file)
@@ -1507,7 +1507,11 @@ static int ttusb_probe(struct usb_interface *intf, const struct usb_device_id *i
 
        mutex_unlock(&ttusb->semi2c);
 
-       dvb_register_adapter(&ttusb->adapter, "Technotrend/Hauppauge Nova-USB", THIS_MODULE);
+       if ((result = dvb_register_adapter(&ttusb->adapter, "Technotrend/Hauppauge Nova-USB", THIS_MODULE)) < 0) {
+               ttusb_free_iso_urbs(ttusb);
+               kfree(ttusb);
+               return result;
+       }
        ttusb->adapter.priv = ttusb;
 
        /* i2c */