From: Takashi Iwai <tiwai@suse.de>
Date: Tue, 20 Jan 2015 08:09:27 +0000 (+0100)
Subject: ALSA: line6: Don't forget to call driver's destructor at error path
X-Git-Tag: firefly_0821_release~176^2~2367^2~35^2~26
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=eedd0e95d355c7bc09df1481ef92511f631832b3;p=firefly-linux-kernel-4.4.55.git

ALSA: line6: Don't forget to call driver's destructor at error path

Currently disconnect callback is used as a driver's destructor, and
this has to be called not only at the disconnection time but also at
the error paths during probe.

Tested-by: Chris Rorvick <chris@rorvick.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---

diff --git a/sound/usb/line6/driver.c b/sound/usb/line6/driver.c
index 625272fe227a..e7f9a99e1949 100644
--- a/sound/usb/line6/driver.c
+++ b/sound/usb/line6/driver.c
@@ -568,6 +568,8 @@ int line6_probe(struct usb_interface *interface,
 	return 0;
 
  err_destruct:
+	if (line6->disconnect)
+		line6->disconnect(interface);
 	snd_card_free(card);
  err_put:
 	return ret;