From 3ec797a8cf392c81ad4497bfeff4f6ed29d2a20c Mon Sep 17 00:00:00 2001 From: Jonathan Leitschuh Date: Thu, 24 Jul 2014 16:47:36 -0400 Subject: [PATCH] Updates the CANJaguar to free itself before throwing an exception in the constructor. This allows it to be allocated later without throwing an Allocation exception. Change-Id: Ifbd15fecad92fa17a1c4b92d444b67221dacb4b5 --- .../src/main/java/edu/wpi/first/wpilibj/CANJaguar.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/wpilibj/wpilibJavaDevices/src/main/java/edu/wpi/first/wpilibj/CANJaguar.java b/wpilibj/wpilibJavaDevices/src/main/java/edu/wpi/first/wpilibj/CANJaguar.java index d8c92e2535..f4290ecd77 100644 --- a/wpilibj/wpilibJavaDevices/src/main/java/edu/wpi/first/wpilibj/CANJaguar.java +++ b/wpilibj/wpilibJavaDevices/src/main/java/edu/wpi/first/wpilibj/CANJaguar.java @@ -13,7 +13,6 @@ import java.nio.ByteOrder; import edu.wpi.first.wpilibj.can.CANExceptionFactory; import edu.wpi.first.wpilibj.can.CANJNI; import edu.wpi.first.wpilibj.can.CANMessageNotFoundException; -import edu.wpi.first.wpilibj.Timer; import edu.wpi.first.wpilibj.livewindow.LiveWindowSendable; import edu.wpi.first.wpilibj.tables.ITable; import edu.wpi.first.wpilibj.tables.ITableListener; @@ -206,6 +205,8 @@ public class CANJaguar implements MotorSafety, PIDOutput, SpeedController, LiveW !m_receivedStatusMessage1 || !m_receivedStatusMessage2 || !receivedFirmwareVersion) { + /* Free the resource */ + free(); throw new CANMessageNotFoundException(); }