Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6
[pandora-kernel.git] / drivers / mfd / menelaus.c
index a94b131..721948b 100644 (file)
@@ -1228,6 +1228,7 @@ fail2:
        free_irq(client->irq, menelaus);
        flush_scheduled_work();
 fail1:
+       i2c_set_clientdata(client, NULL);
        kfree(menelaus);
        return err;
 }
@@ -1237,8 +1238,8 @@ static int __exit menelaus_remove(struct i2c_client *client)
        struct menelaus_chip    *menelaus = i2c_get_clientdata(client);
 
        free_irq(client->irq, menelaus);
-       kfree(menelaus);
        i2c_set_clientdata(client, NULL);
+       kfree(menelaus);
        the_menelaus = NULL;
        return 0;
 }