summary refs log tree commit diff
path: root/sound/usb/6fire/comm.c
diff options
context:
space:
mode:
authorSachin Kamat <sachin.kamat@linaro.org>2012-11-21 14:36:57 +0530
committerTakashi Iwai <tiwai@suse.de>2012-11-21 10:43:52 +0100
commit27b2a22c714303d1920e269a8322ff23107694ee (patch)
tree76f06bcdd9975d8223e23a075ad3a697b8e5441d /sound/usb/6fire/comm.c
parent6cf95152079d7c6d7ba6442be45e02b24bbb1c65 (diff)
downloadlinux-27b2a22c714303d1920e269a8322ff23107694ee.tar.gz
ALSA: usb/6fire: Fix potential NULL pointer dereference in comm.c
'rt' was dereferenced before the NULL check.
Moved the code after the check.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb/6fire/comm.c')
-rw-r--r--sound/usb/6fire/comm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/usb/6fire/comm.c b/sound/usb/6fire/comm.c
index 6c3d531a250e..1a75c36932d8 100644
--- a/sound/usb/6fire/comm.c
+++ b/sound/usb/6fire/comm.c
@@ -129,12 +129,13 @@ int __devinit usb6fire_comm_init(struct sfire_chip *chip)
 {
 	struct comm_runtime *rt = kzalloc(sizeof(struct comm_runtime),
 			GFP_KERNEL);
-	struct urb *urb = &rt->receiver;
+	struct urb *urb;
 	int ret;
 
 	if (!rt)
 		return -ENOMEM;
 
+	urb = &rt->receiver;
 	rt->serial = 1;
 	rt->chip = chip;
 	usb_init_urb(urb);