From fbd2edaae5093a216070f23f738e02412e4ebbf0 Mon Sep 17 00:00:00 2001 From: Jimmy Johnson Date: Sat, 26 Mar 2016 07:33:40 -0700 Subject: [PATCH] fixing possible safety issue with altitude --- src/modules/navigator/mission_block.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/modules/navigator/mission_block.cpp b/src/modules/navigator/mission_block.cpp index 9d11c9b84a..611b5af7cd 100644 --- a/src/modules/navigator/mission_block.cpp +++ b/src/modules/navigator/mission_block.cpp @@ -449,10 +449,12 @@ MissionBlock::set_follow_target_item(struct mission_item_s *item, float min_clea item->lat = target.lat; item->lon = target.lon; - item->altitude = target.alt + _navigator->get_home_position()->alt; + item->altitude = _navigator->get_home_position()->alt; - if (((min_clearance > 0.0f) && (item->altitude < _navigator->get_home_position()->alt + min_clearance)) || PX4_ISFINITE(target.alt)) { - item->altitude = _navigator->get_home_position()->alt + min_clearance; + if (min_clearance > 0.0f) { + item->altitude += min_clearance; + } else { + item->altitude += 8.0f; // if min clearance is bad set it to 8.0 meters (well above the average height of a person) } }