diff --git a/src/platforms/common/px4_getopt.c b/src/platforms/common/px4_getopt.c index a242e66e83..6b0427b936 100644 --- a/src/platforms/common/px4_getopt.c +++ b/src/platforms/common/px4_getopt.c @@ -143,10 +143,12 @@ __EXPORT int px4_getopt(int argc, char *argv[], const char *options, int *myopti char c; int takesarg; - if (*myoptind == 1) + if (*myoptind == 1) { if (reorder(argc, argv, options) != 0) { + *myoptind += 1; return (int)'?'; } + } p = argv[*myoptind]; @@ -158,6 +160,7 @@ __EXPORT int px4_getopt(int argc, char *argv[], const char *options, int *myopti c = isvalidopt(p[1], options, &takesarg); if (c == '?') { + *myoptind += 1; return (int)c; }