diff options
-rw-r--r-- | libbb/getopt32.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/libbb/getopt32.c b/libbb/getopt32.c index 913a009..4b5a7d2 100644 --- a/libbb/getopt32.c +++ b/libbb/getopt32.c @@ -494,7 +494,7 @@ getopt32(char **argv, const char *applet_opts, ...) va_end(p); if (spec_flgs & FIRST_ARGV_IS_OPT) { - if (argv[1] && argv[1][0] != '-' && argv[1][1] != '\0') { + if (argv[1] && argv[1][0] != '-' && argv[1][0] != '\0') { #if DONT_USE_PRINTF char *pp = alloca(strlen(argv[1]) + 2); *pp = '-'; @@ -502,8 +502,7 @@ getopt32(char **argv, const char *applet_opts, ...) argv[1] = pp; #else argv[1] = xasprintf("-%s", argv[1]); - if (ENABLE_FEATURE_CLEAN_UP) - spec_flgs |= FREE_FIRST_ARGV_IS_OPT; + spec_flgs |= FREE_FIRST_ARGV_IS_OPT; #endif } } @@ -586,10 +585,9 @@ getopt32(char **argv, const char *applet_opts, ...) } } -#if ENABLE_FEATURE_CLEAN_UP if (spec_flgs & FREE_FIRST_ARGV_IS_OPT) free(argv[1]); -#endif + /* check depending requires for given options */ for (on_off = complementary; on_off->opt_char; on_off++) { if (on_off->requires && (flags & on_off->switch_on) && |