From b1fe1f18d4c21ed2d9923cbe7e6383dfc606a691 Mon Sep 17 00:00:00 2001 From: Iampete1 Date: Mon, 9 Sep 2024 13:18:32 +0100 Subject: [PATCH] AP_Airspeed: healthy: check enabled first for instance range check --- libraries/AP_Airspeed/AP_Airspeed.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libraries/AP_Airspeed/AP_Airspeed.cpp b/libraries/AP_Airspeed/AP_Airspeed.cpp index b61bec4c92..397c5d1d6e 100644 --- a/libraries/AP_Airspeed/AP_Airspeed.cpp +++ b/libraries/AP_Airspeed/AP_Airspeed.cpp @@ -876,7 +876,10 @@ bool AP_Airspeed::enabled(uint8_t i) const { // return health status of sensor bool AP_Airspeed::healthy(uint8_t i) const { - bool ok = state[i].healthy && enabled(i) && sensor[i] != nullptr; + if (!enabled(i)) { + return false; + } + bool ok = state[i].healthy && sensor[i] != nullptr; #ifndef HAL_BUILD_AP_PERIPH // sanity check the offset parameter. Zero is permitted if we are skipping calibration. ok &= (fabsf(param[i].offset) > 0 || state[i].use_zero_offset || param[i].skip_cal);