From fab053d33bdd9ca0548df493764605239e6ee094 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Mon, 11 Oct 2021 15:26:48 -0400 Subject: [PATCH] mavlink: receiver battery_status prevent out of bounds access - fixes https://github.com/PX4/PX4-Autopilot/issues/18385 --- src/modules/mavlink/mavlink_receiver.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/mavlink/mavlink_receiver.cpp b/src/modules/mavlink/mavlink_receiver.cpp index 87199da551..de2ea02b65 100644 --- a/src/modules/mavlink/mavlink_receiver.cpp +++ b/src/modules/mavlink/mavlink_receiver.cpp @@ -1730,7 +1730,7 @@ MavlinkReceiver::handle_message_battery_status(mavlink_message_t *msg) float voltage_sum = 0.0f; uint8_t cell_count = 0; - while (battery_mavlink.voltages[cell_count] < UINT16_MAX && cell_count < 10) { + while ((cell_count < 10) && (battery_mavlink.voltages[cell_count] < UINT16_MAX)) { battery_status.voltage_cell_v[cell_count] = (float)(battery_mavlink.voltages[cell_count]) / 1000.0f; voltage_sum += battery_status.voltage_cell_v[cell_count]; cell_count++;