Skip to content

Commit

Permalink
ALSA: snd-usb-caiaq: fix smatch warnings
Browse files Browse the repository at this point in the history
Fix three smatch warnings recently introduced:

sound/usb/caiaq/device.c:166 usb_ep1_command_reply_dispatch() warn:
  variable dereferenced before check 'cdev' (see line 163)
sound/usb/caiaq/device.c:517 snd_disconnect() warn: variable
  dereferenced before check 'card' (see line 514)
sound/usb/caiaq/input.c:510 snd_usb_caiaq_ep4_reply_dispatch() warn:
  variable dereferenced before check 'cdev' (see line 506)

Signed-off-by: Daniel Mack <zonque@gmail.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Daniel Mack authored and Takashi Iwai committed Mar 7, 2013
1 parent f1f6b8f commit 2dad940
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
8 changes: 4 additions & 4 deletions sound/usb/caiaq/device.c
Original file line number Diff line number Diff line change
Expand Up @@ -159,8 +159,8 @@ static struct usb_device_id snd_usb_id_table[] = {
static void usb_ep1_command_reply_dispatch (struct urb* urb)
{
int ret;
struct device *dev = &urb->dev->dev;
struct snd_usb_caiaqdev *cdev = urb->context;
struct device *dev = caiaqdev_to_dev(cdev);
unsigned char *buf = urb->transfer_buffer;

if (urb->status || !cdev) {
Expand Down Expand Up @@ -511,13 +511,13 @@ static int snd_probe(struct usb_interface *intf,
static void snd_disconnect(struct usb_interface *intf)
{
struct snd_card *card = usb_get_intfdata(intf);
struct snd_usb_caiaqdev *cdev = caiaqdev(card);
struct device *dev;
struct device *dev = intf->usb_dev;
struct snd_usb_caiaqdev *cdev;

if (!card)
return;

dev = caiaqdev_to_dev(cdev);
cdev = caiaqdev(card);
dev_dbg(dev, "%s(%p)\n", __func__, intf);

snd_card_disconnect(card);
Expand Down
2 changes: 1 addition & 1 deletion sound/usb/caiaq/input.c
Original file line number Diff line number Diff line change
Expand Up @@ -503,8 +503,8 @@ static void snd_usb_caiaq_maschine_dispatch(struct snd_usb_caiaqdev *cdev,
static void snd_usb_caiaq_ep4_reply_dispatch(struct urb *urb)
{
struct snd_usb_caiaqdev *cdev = urb->context;
struct device *dev = caiaqdev_to_dev(cdev);
unsigned char *buf = urb->transfer_buffer;
struct device *dev = &urb->dev->dev;
int ret;

if (urb->status || !cdev || urb != cdev->ep4_in_urb)
Expand Down

0 comments on commit 2dad940

Please sign in to comment.