ChangeSet 1.1117.2.3, 2003/02/28 13:34:46-08:00, baldrick@wanadoo.fr

[PATCH] USB speedtouch: be firm when disconnected

Just say -ENODEV


 drivers/usb/misc/speedtouch.c |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)


diff -Nru a/drivers/usb/misc/speedtouch.c b/drivers/usb/misc/speedtouch.c
--- a/drivers/usb/misc/speedtouch.c	Fri Feb 28 14:48:26 2003
+++ b/drivers/usb/misc/speedtouch.c	Fri Feb 28 14:48:26 2003
@@ -648,9 +648,9 @@
 
 	dbg ("udsl_atm_send called (skb 0x%p, len %u)", skb, skb->len);
 
-	if (!instance) {
-		dbg ("NULL instance!");
-		return -EINVAL;
+	if (!instance || !instance->usb_dev) {
+		dbg ("NULL data!");
+		return -ENODEV;
 	}
 
 	if (!instance->firmware_loaded)
@@ -701,6 +701,7 @@
 	tasklet_kill (&instance->send_tasklet);
 	dbg ("udsl_atm_dev_close: freeing instance");
 	kfree (instance);
+	dev->dev_data = NULL;
 }
 
 
@@ -776,8 +777,8 @@
 
 	dbg ("udsl_atm_open called");
 
-	if (!instance) {
-		dbg ("NULL instance!");
+	if (!instance || !instance->usb_dev) {
+		dbg ("NULL data!");
 		return -ENODEV;
 	}
 
