add support for non-option arguments extension to getopt
this is a GNU extension, activated by including '-' as the first character of the options string, whereby non-option arguments are processed as if they were arguments to an option character '\1' rather than ending option processing.
This commit is contained in:
committed by
Rich Felker
parent
d8dc2b7c02
commit
b72cd07f17
@@ -12,9 +12,10 @@ static int __getopt_long(int argc, char *const *argv, const char *optstring, con
|
||||
__optpos = 0;
|
||||
optind = 1;
|
||||
}
|
||||
if (optind >= argc || !argv[optind] || argv[optind][0] != '-') return -1;
|
||||
if ((longonly && argv[optind][1]) ||
|
||||
(argv[optind][1] == '-' && argv[optind][2]))
|
||||
if (optind >= argc || !argv[optind]) return -1;
|
||||
if (argv[optind][0] == '-' &&
|
||||
((longonly && argv[optind][1]) ||
|
||||
(argv[optind][1] == '-' && argv[optind][2])))
|
||||
{
|
||||
int i;
|
||||
for (i=0; longopts[i].name; i++) {
|
||||
|
||||
Reference in New Issue
Block a user