From 2816b06c057655188bcfc16f2c8e1c1f6c438069 Mon Sep 17 00:00:00 2001 From: Peter Johnson Date: Fri, 20 Nov 2020 15:11:11 -0800 Subject: [PATCH] [sim] HAL_GetControlWord: Fully zero output (#2873) This ensures the padding is zero'ed. We already do this on Athena, we just didn't in sim. --- hal/src/main/native/cpp/jni/HAL.cpp | 1 - hal/src/main/native/sim/DriverStation.cpp | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/hal/src/main/native/cpp/jni/HAL.cpp b/hal/src/main/native/cpp/jni/HAL.cpp index 3d736bfcbe..bfd99b6ec3 100644 --- a/hal/src/main/native/cpp/jni/HAL.cpp +++ b/hal/src/main/native/cpp/jni/HAL.cpp @@ -172,7 +172,6 @@ Java_edu_wpi_first_hal_HAL_nativeGetControlWord static_assert(sizeof(HAL_ControlWord) == sizeof(jint), "Java int must match the size of control word"); HAL_ControlWord controlWord; - std::memset(&controlWord, 0, sizeof(HAL_ControlWord)); HAL_GetControlWord(&controlWord); jint retVal = 0; std::memcpy(&retVal, &controlWord, sizeof(HAL_ControlWord)); diff --git a/hal/src/main/native/sim/DriverStation.cpp b/hal/src/main/native/sim/DriverStation.cpp index aef85562c2..5c49e1f9e1 100644 --- a/hal/src/main/native/sim/DriverStation.cpp +++ b/hal/src/main/native/sim/DriverStation.cpp @@ -122,6 +122,7 @@ int32_t HAL_SendConsoleLine(const char* line) { } int32_t HAL_GetControlWord(HAL_ControlWord* controlWord) { + std::memset(controlWord, 0, sizeof(HAL_ControlWord)); controlWord->enabled = SimDriverStationData->enabled; controlWord->autonomous = SimDriverStationData->autonomous; controlWord->test = SimDriverStationData->test;