Fix a bug preventing use of escaped characters that use the signed bit
authorGlenn L McGrath <bug1@ihug.co.nz>
Fri, 19 Dec 2003 10:13:10 +0000 (10:13 -0000)
committerGlenn L McGrath <bug1@ihug.co.nz>
Fri, 19 Dec 2003 10:13:10 +0000 (10:13 -0000)
libbb/getopt_ulflags.c

index 04d1e669fed23f1d1378c1c29f88ff479e1a4af6..371fdab265bb529d8017b9658c6b6f2c07ad38cc 100644 (file)
@@ -60,7 +60,7 @@ const char *bb_opt_complementaly;
 
 typedef struct
 {
-       char opt;
+       unsigned char opt;
        char list_flg;
        unsigned long switch_on;
        unsigned long switch_off;
@@ -159,10 +159,9 @@ bb_getopt_ulflags (int argc, char **argv, const char *applet_opts, ...)
 
   while ((c = getopt_long (argc, argv, applet_opts,
                            bb_applet_long_options, NULL)) > 0) {
-
        for (on_off = complementaly; on_off->opt != c; on_off++) {
            if(!on_off->opt)
-               bb_show_usage ();
+                       bb_show_usage ();
        }
        if(flags & on_off->incongruously)
            flags |= 0x80000000UL;