mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-28 07:48:37 -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+1, events[i].value > 0);
|
||||
}
|
||||
nassertd(code >= 0 && (size_t)code < _axis_indices.size()) break;
|
||||
index = _axis_indices[code];
|
||||
if (index >= 0) {
|
||||
axis_changed(index, events[i].value);
|
||||
if (code >= 0 && (size_t)code < _axis_indices.size()) {
|
||||
index = _axis_indices[code];
|
||||
if (index >= 0) {
|
||||
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;
|
||||
|
||||
case EV_KEY:
|
||||
nassertd(code >= 0 && (size_t)code < _button_indices.size()) break;
|
||||
index = _button_indices[code];
|
||||
if (index >= 0) {
|
||||
button_changed(index, events[i].value != 0);
|
||||
if (code >= 0 && (size_t)code < _button_indices.size()) {
|
||||
index = _button_indices[code];
|
||||
if (index >= 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) {
|
||||
axis_changed(_ltrigger_axis, events[i].value);
|
||||
} else if (code == _rtrigger_code) {
|
||||
axis_changed(_ltrigger_axis + 1, events[i].value);
|
||||
else if (device_cat.is_debug()) {
|
||||
device_cat.debug()
|
||||
<< "Ignoring EV_KEY event with unknown code " << code << "\n";
|
||||
}
|
||||
break;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user