diff options
author | Dmitry Torokhov <dtor@insightbb.com> | 2006-07-19 07:08:51 +0200 |
---|---|---|
committer | Dmitry Torokhov <dtor@insightbb.com> | 2006-07-19 07:08:51 +0200 |
commit | b6d786dbe6fc19b51edd6cf6de84fd65b702c800 (patch) | |
tree | 999b39ed26d3c51278d469f5ea7c1d5a7b49eaaa /drivers/input | |
parent | Input: HID - fix potential out-of-bound array access (diff) | |
download | linux-b6d786dbe6fc19b51edd6cf6de84fd65b702c800.tar.xz linux-b6d786dbe6fc19b51edd6cf6de84fd65b702c800.zip |
Input: add missing handler->start() call
The start() method need to be called every time we create
a new handle. This includes not only registering new devices
but also when registering new handlers.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input')
-rw-r--r-- | drivers/input/input.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/input/input.c b/drivers/input/input.c index 9c98b6d6848b..9cb4b9a54f01 100644 --- a/drivers/input/input.c +++ b/drivers/input/input.c @@ -1056,8 +1056,11 @@ void input_register_handler(struct input_handler *handler) list_for_each_entry(dev, &input_dev_list, node) if (!handler->blacklist || !input_match_device(handler->blacklist, dev)) if ((id = input_match_device(handler->id_table, dev))) - if ((handle = handler->connect(handler, dev, id))) + if ((handle = handler->connect(handler, dev, id))) { input_link_handle(handle); + if (handler->start) + handler->start(handle); + } input_wakeup_procfs_readers(); } |