mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-29 00:06:44 -04:00
device: Silently ignore invalid evdev keycodes generated by some drivers
Fixes #1066
This commit is contained in:
parent
10ef9b3456
commit
6f35cb0235
@ -806,23 +806,33 @@ process_events() {
|
|||||||
button_changed(_dpad_up_button, events[i].value < 0);
|
button_changed(_dpad_up_button, events[i].value < 0);
|
||||||
button_changed(_dpad_up_button+1, events[i].value > 0);
|
button_changed(_dpad_up_button+1, events[i].value > 0);
|
||||||
}
|
}
|
||||||
nassertd(code >= 0 && (size_t)code < _axis_indices.size()) break;
|
if (code >= 0 && (size_t)code < _axis_indices.size()) {
|
||||||
index = _axis_indices[code];
|
index = _axis_indices[code];
|
||||||
if (index >= 0) {
|
if (index >= 0) {
|
||||||
axis_changed(index, events[i].value);
|
axis_changed(index, events[i].value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (device_cat.is_debug()) {
|
||||||
|
device_cat.debug()
|
||||||
|
<< "Ignoring EV_ABS event with unknown code " << code << "\n";
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case EV_KEY:
|
case EV_KEY:
|
||||||
nassertd(code >= 0 && (size_t)code < _button_indices.size()) break;
|
if (code >= 0 && (size_t)code < _button_indices.size()) {
|
||||||
index = _button_indices[code];
|
index = _button_indices[code];
|
||||||
if (index >= 0) {
|
if (index >= 0) {
|
||||||
button_changed(index, events[i].value != 0);
|
button_changed(index, events[i].value != 0);
|
||||||
|
}
|
||||||
|
if (code == _ltrigger_code) {
|
||||||
|
axis_changed(_ltrigger_axis, events[i].value);
|
||||||
|
} else if (code == _rtrigger_code) {
|
||||||
|
axis_changed(_ltrigger_axis + 1, events[i].value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (code == _ltrigger_code) {
|
else if (device_cat.is_debug()) {
|
||||||
axis_changed(_ltrigger_axis, events[i].value);
|
device_cat.debug()
|
||||||
} else if (code == _rtrigger_code) {
|
<< "Ignoring EV_KEY event with unknown code " << code << "\n";
|
||||||
axis_changed(_ltrigger_axis + 1, events[i].value);
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user