From: Rich Felker Date: Sat, 13 Dec 2014 06:04:21 +0000 (-0500) Subject: fix handling of "--" with getopt_long argv permutation X-Git-Tag: v1.1.6~30 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=567cc81c7e3f38c3ca9b223f5d771205711b1f5c;p=oweals%2Fmusl.git fix handling of "--" with getopt_long argv permutation if argv permutation is used, the option terminator "--" should be moved before any skipped non-option arguments rather than being left in the argv tail where the caller will see and interpret it. --- diff --git a/src/misc/getopt_long.c b/src/misc/getopt_long.c index c3cf7f93..c3593716 100644 --- a/src/misc/getopt_long.c +++ b/src/misc/getopt_long.c @@ -33,7 +33,6 @@ static int __getopt_long(int argc, char *const *argv, const char *optstring, con if (i >= argc || !argv[i]) return -1; if (argv[i][0] != '-') continue; if (!argv[i][1]) continue; - if (argv[i][1] == '-' && !argv[i][2]) return -1; break; } optind = i;