From a2a113ee283f3560a3cb0d26ad75bd2cc7d19b5d Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Sun, 29 Mar 2015 00:55:04 +0100 Subject: [PATCH] Ported mc_att_control --- .../mc_att_control/mc_att_control_main.cpp | 38 +++++++++++-------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/src/modules/mc_att_control/mc_att_control_main.cpp b/src/modules/mc_att_control/mc_att_control_main.cpp index c579ce8830..93d2116b46 100644 --- a/src/modules/mc_att_control/mc_att_control_main.cpp +++ b/src/modules/mc_att_control/mc_att_control_main.cpp @@ -894,10 +894,8 @@ MulticopterAttitudeControl::task_main() perf_end(_loop_perf); } - warnx("exit"); - _control_task = -1; - _exit(0); + return; } int @@ -924,43 +922,53 @@ MulticopterAttitudeControl::start() int mc_att_control_main(int argc, char *argv[]) { if (argc < 2) { - errx(1, "usage: mc_att_control {start|stop|status}"); + warnx("usage: mc_att_control {start|stop|status}"); + return 1; } if (!strcmp(argv[1], "start")) { - if (mc_att_control::g_control != nullptr) - errx(1, "already running"); + if (mc_att_control::g_control != nullptr) { + warnx("already running"); + return 1; + } mc_att_control::g_control = new MulticopterAttitudeControl; - if (mc_att_control::g_control == nullptr) - errx(1, "alloc failed"); + if (mc_att_control::g_control == nullptr) { + warnx("alloc failed"); + return 1; + } if (OK != mc_att_control::g_control->start()) { delete mc_att_control::g_control; mc_att_control::g_control = nullptr; - err(1, "start failed"); + warnx("start failed"); + return 1; } - exit(0); + return 0; } if (!strcmp(argv[1], "stop")) { - if (mc_att_control::g_control == nullptr) - errx(1, "not running"); + if (mc_att_control::g_control == nullptr) { + warnx("not running"); + return 1; + } delete mc_att_control::g_control; mc_att_control::g_control = nullptr; - exit(0); + return 0; } if (!strcmp(argv[1], "status")) { if (mc_att_control::g_control) { - errx(0, "running"); + warnx("running"); + return 0; } else { - errx(1, "not running"); + warnx("not running"); + return 1; } }