|
@@ -257,9 +257,10 @@ static int input_handle_abs_event(struct input_dev *dev,
|
|
|
}
|
|
|
|
|
|
static int input_get_disposition(struct input_dev *dev,
|
|
|
- unsigned int type, unsigned int code, int value)
|
|
|
+ unsigned int type, unsigned int code, int *pval)
|
|
|
{
|
|
|
int disposition = INPUT_IGNORE_EVENT;
|
|
|
+ int value = *pval;
|
|
|
|
|
|
switch (type) {
|
|
|
|
|
@@ -357,6 +358,7 @@ static int input_get_disposition(struct input_dev *dev,
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
+ *pval = value;
|
|
|
return disposition;
|
|
|
}
|
|
|
|
|
@@ -365,7 +367,7 @@ static void input_handle_event(struct input_dev *dev,
|
|
|
{
|
|
|
int disposition;
|
|
|
|
|
|
- disposition = input_get_disposition(dev, type, code, value);
|
|
|
+ disposition = input_get_disposition(dev, type, code, &value);
|
|
|
|
|
|
if ((disposition & INPUT_PASS_TO_DEVICE) && dev->event)
|
|
|
dev->event(dev, type, code, value);
|