mirror of
https://github.com/Ryujinx/Opentk.git
synced 2024-12-23 11:05:40 +00:00
[OpenTK] Protect against invalid axis/button ids
This commit is contained in:
parent
e6a9adf494
commit
44e2576c86
|
@ -130,22 +130,28 @@ namespace OpenTK.Input
|
||||||
|
|
||||||
internal void SetAxis(JoystickAxis axis, float @value)
|
internal void SetAxis(JoystickAxis axis, float @value)
|
||||||
{
|
{
|
||||||
move_args.Axis = axis;
|
if ((int)axis < axis_collection.Count)
|
||||||
move_args.Delta = move_args.Value - @value;
|
{
|
||||||
axis_collection[axis] = move_args.Value = @value;
|
move_args.Axis = axis;
|
||||||
Move(this, move_args);
|
move_args.Delta = move_args.Value - @value;
|
||||||
|
axis_collection[axis] = move_args.Value = @value;
|
||||||
|
Move(this, move_args);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void SetButton(JoystickButton button, bool @value)
|
internal void SetButton(JoystickButton button, bool @value)
|
||||||
{
|
{
|
||||||
if (button_collection[button] != @value)
|
if ((int)button < button_collection.Count)
|
||||||
{
|
{
|
||||||
button_args.Button = button;
|
if (button_collection[button] != @value)
|
||||||
button_collection[button] = button_args.Pressed = @value;
|
{
|
||||||
if (@value)
|
button_args.Button = button;
|
||||||
ButtonDown(this, button_args);
|
button_collection[button] = button_args.Pressed = @value;
|
||||||
else
|
if (@value)
|
||||||
ButtonUp(this, button_args);
|
ButtonDown(this, button_args);
|
||||||
|
else
|
||||||
|
ButtonUp(this, button_args);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue