diff options
author | "Vladimir N. Oleynik" | 2005-10-05 13:58:40 +0000 |
---|---|---|
committer | "Vladimir N. Oleynik" | 2005-10-05 13:58:40 +0000 |
commit | 4a5ce08688bc22d5b66363bfad4628b0b57d60f4 (patch) | |
tree | 1d4921567b40c0b3c6d0589da9c7773835434ec2 | |
parent | b48bfe795ec20dc03ead851ea7c56b053f1289af (diff) | |
download | busybox-4a5ce08688bc22d5b66363bfad4628b0b57d60f4.zip busybox-4a5ce08688bc22d5b66363bfad4628b0b57d60f4.tar.gz |
another more correction for getopt_ulflags() documentation (examples)
-rw-r--r-- | libbb/getopt_ulflags.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/libbb/getopt_ulflags.c b/libbb/getopt_ulflags.c index 5ed9c2e..2e2ee0b 100644 --- a/libbb/getopt_ulflags.c +++ b/libbb/getopt_ulflags.c @@ -134,9 +134,12 @@ const char *bb_opt_complementally llist_t *my_b = NULL; int verbose_level = 0; bb_opt_complementally = "vv:b*:b-c:c-b"; - bb_getopt_ulflags(argc, argv, "vb:c", &my_b, &verbose_level); - while (my_b) { dosomething_with(my_b->data) ; my_b = my_b->link; } - if (verbose_level) bb_printf("verbose\n"); + f = bb_getopt_ulflags(argc, argv, "vb:c", &my_b, &verbose_level); + if((f & 2)) // -c after -b unset this -b flag + while (my_b) { dosomething_with(my_b->data) ; my_b = my_b->link; } + if(my_b) // but llist stored always if -b found + free_llist(my_b); + if (verbose_level) bb_printf("verbose level is %d\n", verbose_level); Special characters: @@ -174,8 +177,8 @@ Special characters: bb_opt_complementally = "-:w-x:x-w"; bb_getopt_ulflags(argc, argv, "wx"); - Allows option 'w' to be given without a dash (./program w x) - as well as with a dash (./program -x). + Allows any arguments to be given without a dash (./program w x) + as well as with a dash (./program -x). Why unset -w see above. "~" A tilde between two options, or between an option and a group of options, means that they are mutually exclusive. Unlike |