diff --git a/[refs] b/[refs] index 959324ce489b..48a917540f93 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e38de678f6b19be3e46a678ec4deeaa7fa0fc140 +refs/heads/master: 6d2750c167d47a97936cf4415165205f945c08f8 diff --git a/trunk/drivers/input/input.c b/trunk/drivers/input/input.c index 1fc0517e9428..1c71dd6fe5cd 100644 --- a/trunk/drivers/input/input.c +++ b/trunk/drivers/input/input.c @@ -1014,9 +1014,12 @@ EXPORT_SYMBOL(input_register_device); void input_unregister_device(struct input_dev *dev) { struct list_head *node, *next; + int code; - if (!dev) - return; + for (code = 0; code <= KEY_MAX; code++) + if (test_bit(code, dev->key)) + input_report_key(dev, code, 0); + input_sync(dev); del_timer_sync(&dev->timer);