diff options
-rw-r--r-- | drivers/media/dvb/dvb-usb/dvb_usb_init.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/drivers/media/dvb/dvb-usb/dvb_usb_init.c b/drivers/media/dvb/dvb-usb/dvb_usb_init.c index a2beb60908d1..3078371d626b 100644 --- a/drivers/media/dvb/dvb-usb/dvb_usb_init.c +++ b/drivers/media/dvb/dvb-usb/dvb_usb_init.c | |||
@@ -258,10 +258,18 @@ int dvb_usbv2_device_init_(struct usb_interface *intf, | |||
258 | struct dvb_usb_device *d = NULL; | 258 | struct dvb_usb_device *d = NULL; |
259 | struct dvb_usb_driver_info *driver_info = | 259 | struct dvb_usb_driver_info *driver_info = |
260 | (struct dvb_usb_driver_info *) id->driver_info; | 260 | (struct dvb_usb_driver_info *) id->driver_info; |
261 | const struct dvb_usb_device_properties *props = driver_info->props; | 261 | const struct dvb_usb_device_properties *props; |
262 | int ret = -ENOMEM; | 262 | int ret = -ENOMEM; |
263 | bool cold = false; | 263 | bool cold = false; |
264 | 264 | ||
265 | if (!id->driver_info) { | ||
266 | pr_err("%s: driver_info is null", KBUILD_MODNAME); | ||
267 | ret = -ENODEV; | ||
268 | goto err; | ||
269 | } | ||
270 | |||
271 | props = driver_info->props; | ||
272 | |||
265 | d = kzalloc(sizeof(struct dvb_usb_device), GFP_KERNEL); | 273 | d = kzalloc(sizeof(struct dvb_usb_device), GFP_KERNEL); |
266 | if (d == NULL) { | 274 | if (d == NULL) { |
267 | err("no memory for 'struct dvb_usb_device'"); | 275 | err("no memory for 'struct dvb_usb_device'"); |
@@ -326,7 +334,8 @@ int dvb_usbv2_device_init_(struct usb_interface *intf, | |||
326 | err_kfree: | 334 | err_kfree: |
327 | kfree(d->priv); | 335 | kfree(d->priv); |
328 | kfree(d); | 336 | kfree(d); |
329 | 337 | err: | |
338 | pr_debug("%s: failed=%d\n", __func__, ret); | ||
330 | return ret; | 339 | return ret; |
331 | } | 340 | } |
332 | 341 | ||