diff options
Diffstat (limited to 'package/busybox/busybox-1.12.2-getopt.patch')
-rw-r--r-- | package/busybox/busybox-1.12.2-getopt.patch | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/package/busybox/busybox-1.12.2-getopt.patch b/package/busybox/busybox-1.12.2-getopt.patch new file mode 100644 index 000000000..bdc8b9327 --- /dev/null +++ b/package/busybox/busybox-1.12.2-getopt.patch @@ -0,0 +1,22 @@ +--- busybox-1.12.2/libbb/getopt32.c Sun Nov 9 18:20:37 2008 ++++ busybox-1.12.2-getopt/libbb/getopt32.c Wed Nov 12 23:03:33 2008 +@@ -515,6 +515,19 @@ + } + } + ++ /* In case getopt32 was already called: ++ * reset the libc getopt() function, which keeps internal state. ++ * run_nofork_applet_prime() does this, but we might end up here ++ * also via gunzip_main() -> gzip_main(). Play safe. ++ */ ++#ifdef __GLIBC__ ++ optind = 0; ++#else /* BSD style */ ++ optind = 1; ++ /* optreset = 1; */ ++#endif ++ /* optarg = NULL; opterr = 0; optopt = 0; - do we need this?? */ ++ + pargv = NULL; + + /* Note: just "getopt() <= 0" will not work well for |