From 3a37d0b560a131e138ff5a11612891846a88033a Mon Sep 17 00:00:00 2001 From: Julian Oes Date: Mon, 16 Dec 2019 13:29:35 +0100 Subject: [PATCH] navigator: improve if structure for vtol/mc/fw --- src/modules/navigator/mission_feasibility_checker.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/modules/navigator/mission_feasibility_checker.cpp b/src/modules/navigator/mission_feasibility_checker.cpp index 7f997584f8..39aeb58133 100644 --- a/src/modules/navigator/mission_feasibility_checker.cpp +++ b/src/modules/navigator/mission_feasibility_checker.cpp @@ -82,14 +82,12 @@ MissionFeasibilityChecker::checkMissionFeasible(const mission_s &mission, failed = failed || !checkGeofence(mission, home_alt, home_valid); failed = failed || !checkHomePositionAltitude(mission, home_alt, home_alt_valid, warned); - // VTOL always respects rotary wing feasibility - if (_navigator->get_vstatus()->vehicle_type == vehicle_status_s::VEHICLE_TYPE_ROTARY_WING - || _navigator->get_vstatus()->is_vtol) { + if (_navigator->get_vstatus()->is_vtol) { failed = failed || !checkRotarywing(mission, home_alt); + failed = failed || !checkFixedwing(mission, home_alt, false); - if (_navigator->get_vstatus()->is_vtol) { - failed = failed || !checkFixedwing(mission, home_alt, false); - } + } else if (_navigator->get_vstatus()->vehicle_type == vehicle_status_s::VEHICLE_TYPE_ROTARY_WING) { + failed = failed || !checkRotarywing(mission, home_alt); } else { failed = failed || !checkFixedwing(mission, home_alt, land_start_req);