Skip to content

Commit

Permalink
V4L/DVB: remove unneeded null check in anysee_probe()
Browse files Browse the repository at this point in the history
Smatch complained because "d" is dereferenced first and then checked for
null later .  The only code path where "d" could be a invalid pointer is
if this is a cold device in dvb_usb_device_init().  I consulted Antti
Palosaari and he explained that anysee is always a warm device.

I have added a comment and removed the unneeded null check.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Dan Carpenter authored and Mauro Carvalho Chehab committed Aug 2, 2010
1 parent 128fe95 commit 8b0d704
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions drivers/media/dvb/dvb-usb/anysee.c
Original file line number Diff line number Diff line change
Expand Up @@ -463,6 +463,11 @@ static int anysee_probe(struct usb_interface *intf,
if (intf->num_altsetting < 1)
return -ENODEV;

/*
* Anysee is always warm (its USB-bridge, Cypress FX2, uploads
* firmware from eeprom). If dvb_usb_device_init() succeeds that
* means d is a valid pointer.
*/
ret = dvb_usb_device_init(intf, &anysee_properties, THIS_MODULE, &d,
adapter_nr);
if (ret)
Expand All @@ -479,10 +484,7 @@ static int anysee_probe(struct usb_interface *intf,
if (ret)
return ret;

if (d)
ret = anysee_init(d);

return ret;
return anysee_init(d);
}

static struct usb_device_id anysee_table[] = {
Expand Down

0 comments on commit 8b0d704

Please sign in to comment.