Selaa lähdekoodia

Input: tsc2005 - clear driver data after unbinding

We should not leave garbage pointers in driver structure after we unbind
it from the device or if bind fails.

Tested-by: Aaro Koskinen <aaro.koskinen@nokia.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Dmitry Torokhov 14 vuotta sitten
vanhempi
commit
2721a89ac4
1 muutettua tiedostoa jossa 4 lisäystä ja 1 poistoa
  1. 4 1
      drivers/input/touchscreen/tsc2005.c

+ 4 - 1
drivers/input/touchscreen/tsc2005.c

@@ -634,8 +634,10 @@ static int __devinit tsc2005_probe(struct spi_device *spi)
 	spi_setup(spi);
 
 	r = tsc2005_setup(ts, pdata);
-	if (r)
+	if (r) {
 		kfree(ts);
+		spi_set_drvdata(spi, NULL);
+	}
 	return r;
 }
 
@@ -659,6 +661,7 @@ static int __devexit tsc2005_remove(struct spi_device *spi)
 	input_unregister_device(ts->idev);
 	kfree(ts);
 
+	spi_set_drvdata(spi, NULL);
 	return 0;
 }