diff --git a/wpilibj/wpilibJavaSim/src/main/java/edu/wpi/first/wpilibj/DriverStation.java b/wpilibj/wpilibJavaSim/src/main/java/edu/wpi/first/wpilibj/DriverStation.java index fec4bcc1e6..342bca9701 100644 --- a/wpilibj/wpilibJavaSim/src/main/java/edu/wpi/first/wpilibj/DriverStation.java +++ b/wpilibj/wpilibJavaSim/src/main/java/edu/wpi/first/wpilibj/DriverStation.java @@ -161,12 +161,12 @@ public class DriverStation implements RobotState.Interface { * @return The value of the axis on the joystick. */ public double getStickAxis(int stick, int axis) { - if (axis < 1 || axis > kJoystickAxes) { - return 0.0; - } if (stick < 0 || stick >= joysticks.length || joysticks[stick] == null) { return 0.0; } + if (axis < 1 || axis > kJoystickAxes || axis > joysticks[stick].getAxesCount()) { + return 0.0; + } return joysticks[stick].getAxes(axis - 1); } @@ -181,6 +181,9 @@ public class DriverStation implements RobotState.Interface { if (stick < 0 || stick >= joysticks.length || joysticks[stick] == null) { return false; } + if (button < 1 || button > joysticks[stick].getButtonsCount()) { + return false; + } return joysticks[stick].getButtons(button - 1); }