From e47ada42984841dc286f65c4b4541d4fb0d9275c Mon Sep 17 00:00:00 2001 From: Gautier Hattenberger Date: Wed, 28 Sep 2022 15:51:46 +0200 Subject: [PATCH] [nav] fix glide computation with a cast uint->int (#2909) fix #2906 --- sw/airborne/firmwares/rotorcraft/navigation.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sw/airborne/firmwares/rotorcraft/navigation.h b/sw/airborne/firmwares/rotorcraft/navigation.h index 49e26a812b..0ca5348424 100644 --- a/sw/airborne/firmwares/rotorcraft/navigation.h +++ b/sw/airborne/firmwares/rotorcraft/navigation.h @@ -305,7 +305,7 @@ static inline void NavGlide(uint8_t start_wp, uint8_t wp) { int32_t start_alt = waypoints[start_wp].enu_i.z; int32_t diff_alt = waypoints[wp].enu_i.z - start_alt; - int32_t alt = start_alt + ((diff_alt * nav_leg_progress) / nav_leg_length); + int32_t alt = start_alt + ((diff_alt * nav_leg_progress) / (int32_t)nav_leg_length); NavVerticalAltitudeMode(POS_FLOAT_OF_BFP(alt), 0); }