From e0c394a00b789aaebd758d0c6da8680d1b956ee6 Mon Sep 17 00:00:00 2001 From: RomanBapst Date: Fri, 9 Oct 2020 13:49:46 +0300 Subject: [PATCH] mission: fixed bug in computation of landing altitude Signed-off-by: RomanBapst --- src/modules/navigator/mission.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/modules/navigator/mission.cpp b/src/modules/navigator/mission.cpp index d55575e0e8..a2cb1aa59a 100644 --- a/src/modules/navigator/mission.cpp +++ b/src/modules/navigator/mission.cpp @@ -406,7 +406,8 @@ Mission::find_mission_land_start() // the DO_LAND_START marker contains no position sp, so take them from the previous mission item _landing_lat = missionitem_prev.lat; _landing_lon = missionitem_prev.lon; - _landing_alt = missionitem_prev.altitude; + _landing_alt = missionitem_prev.altitude_is_relative ? missionitem_prev.altitude + + _navigator->get_home_position()->alt : missionitem_prev.altitude; return true; // if no DO_LAND_START marker available, also check for VTOL_LAND or normal LAND @@ -418,7 +419,8 @@ Mission::find_mission_land_start() _land_start_index = i; _landing_lat = missionitem.lat; _landing_lon = missionitem.lon; - _landing_alt = missionitem.altitude; + _landing_alt = missionitem.altitude_is_relative ? missionitem.altitude + _navigator->get_home_position()->alt : + missionitem.altitude; return true; } }