From befab7303fd7f38dacdc971dbdb824d0345fb46b Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Tue, 10 May 2016 13:57:05 +0200 Subject: [PATCH] Commander: Fix modes switching back to prev mode --- src/modules/commander/commander.cpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/modules/commander/commander.cpp b/src/modules/commander/commander.cpp index f451b44d4e..2318444e97 100644 --- a/src/modules/commander/commander.cpp +++ b/src/modules/commander/commander.cpp @@ -2590,15 +2590,12 @@ int commander_thread_main(int argc, char *argv[]) } } - /* reset main state after takeoff or land has been completed */ - /* only switch back to at least altitude controlled modes */ - if (main_state_prev == commander_state_s::MAIN_STATE_POSCTL || - main_state_prev == commander_state_s::MAIN_STATE_ALTCTL) { - - if ((internal_state.main_state == commander_state_s::MAIN_STATE_AUTO_TAKEOFF - && mission_result.finished) || - (internal_state.main_state == commander_state_s::MAIN_STATE_AUTO_LAND - && land_detector.landed)) { + /* reset main state after takeoff has completed */ + /* only switch back to posctl */ + if (main_state_prev == commander_state_s::MAIN_STATE_POSCTL) { + + if (internal_state.main_state == commander_state_s::MAIN_STATE_AUTO_TAKEOFF + && mission_result.finished) { main_state_transition(&status, main_state_prev, main_state_prev, &status_flags, &internal_state); }