From 1522255c29f4ddd2069cc499fbb85f8882a4544b Mon Sep 17 00:00:00 2001 From: Lorenz Meier Date: Sat, 13 Jun 2015 06:53:02 -0700 Subject: [PATCH] MAVLink app: Fix argument handling to work on all operating systems --- src/modules/mavlink/mavlink_main.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/modules/mavlink/mavlink_main.cpp b/src/modules/mavlink/mavlink_main.cpp index 5b43bc02e0..ce2b5cb8bb 100644 --- a/src/modules/mavlink/mavlink_main.cpp +++ b/src/modules/mavlink/mavlink_main.cpp @@ -1352,14 +1352,16 @@ Mavlink::task_main(int argc, char *argv[]) _datarate = 0; _mode = MAVLINK_MODE_NORMAL; - /* - * Called via create_task with taskname followed by original argv - * mavlink start - * - * Remove all 3 +#ifndef __PX4_POSIX + /* the NuttX optarg handler does not + * ignore argv[0] like the POSIX handler + * does, nor does it deal with non-flag + * verbs well. Remove the application + * name and the verb. */ - argc -= 3; - argv += 3; + argc -= 2; + argv += 2; +#endif /* don't exit from getopt loop to leave getopt global variables in consistent state, * set error flag instead */