diff options
author | Denis Vlasenko | 2008-10-21 12:36:43 +0000 |
---|---|---|
committer | Denis Vlasenko | 2008-10-21 12:36:43 +0000 |
commit | 7effd7ae99b2288452762f29cde8311ec72c2cb8 (patch) | |
tree | 5c6d4925605128728f426dd25d3ebab2ca7360bf /util-linux | |
parent | 4c9e9c4314e6f997f37814fffc6b49ebd24bd6be (diff) | |
download | busybox-7effd7ae99b2288452762f29cde8311ec72c2cb8.zip busybox-7effd7ae99b2288452762f29cde8311ec72c2cb8.tar.gz |
getopt: reinstate erroneously removed getopt() reset code.
Diffstat (limited to 'util-linux')
-rw-r--r-- | util-linux/getopt.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/util-linux/getopt.c b/util-linux/getopt.c index 8b5e46c..fd67287 100644 --- a/util-linux/getopt.c +++ b/util-linux/getopt.c @@ -157,6 +157,15 @@ static int generate_output(char **argv, int argc, const char *optstr, const stru if (quiet_errors) /* No error reporting from getopt(3) */ opterr = 0; + /* We used it already in main() in getopt32(), + * we *must* reset getopt(3): */ +#ifdef __GLIBC__ + optind = 0; +#else /* BSD style */ + optind = 1; + /* optreset = 1; */ +#endif + while (1) { opt = #if ENABLE_GETOPT_LONG |