clean_all = true;
break;
case OPT_EXCLUDE_RANDOM: {
- char *p;
+ bool valid = false;
+ unsigned int i;
exclude = xstrdup (optarg);
STACK_VAR (exclude);
- for (p = exclude; *p; p++)
- *p = tolower (*p);
- if (streq (exclude, "random"))
- vfprintf_fail (formats[FMT_GENERIC], "--exclude-random switch must be provided a color");
+ for (i = 1; i < tables[FOREGROUND].count - 1; i++) /* skip color none and default */
+ {
+ const struct color *entry = &tables[FOREGROUND].entries[i];
+ if (streq (exclude, entry->name))
+ {
+ valid = true;
+ break;
+ }
+ }
+ if (!valid)
+ vfprintf_fail (formats[FMT_GENERIC], "--exclude-random switch must be provided a plain color");
break;
}
case OPT_HELP:
my $file = $write_to_tmpfile->('abc');
- $ok &= $run_program_fail->($program, '--exclude-random=random', 'must be provided a color');
+ $ok &= $run_program_fail->($program, '--exclude-random=random', 'must be provided a plain color');
$ok &= $run_program_fail->($program, '--clean --clean-all', 'mutually exclusive');
$ok &= $run_program_fail->($program, '--clean file1 file2', 'more than one file');
$ok &= $run_program_fail->($program, '--clean-all file1 file2', 'more than one file');