Skip to content

Commit

Permalink
fix: fixes a bug that didn't allow args with default values to have c…
Browse files Browse the repository at this point in the history
…onflicts

Closes #1071
  • Loading branch information
kbknapp committed Oct 24, 2017
1 parent 9cb92c1 commit 58b5b4b
Showing 1 changed file with 10 additions and 8 deletions.
18 changes: 10 additions & 8 deletions src/app/validator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -166,20 +166,22 @@ impl<'a, 'b, 'z> Validator<'a, 'b, 'z> {
}

for name in &self.0.blacklist {
debugln!("Validator::validate_blacklist:iter: Checking blacklisted name: {}",
name);
debugln!("Validator::validate_blacklist:iter:{}: Checking blacklisted arg", name);
let mut should_err = false;
if self.0.groups.iter().any(|g| &g.name == name) {
debugln!("Validator::validate_blacklist:iter: groups contains it...");
debugln!("Validator::validate_blacklist:iter:{}: groups contains it...", name);
for n in self.0.arg_names_in_group(name) {
debugln!("Validator::validate_blacklist:iter:iter: Checking arg '{}' in group...",
n);
debugln!("Validator::validate_blacklist:iter:{}:iter:{}: looking in group...", name, n);
if matcher.contains(n) {
debugln!("Validator::validate_blacklist:iter:iter: matcher contains it...");
debugln!("Validator::validate_blacklist:iter:{}:iter:{}: matcher contains it...", name, n);
return Err(build_err!(self.0, n, matcher));
}
}
} else if matcher.contains(name) {
debugln!("Validator::validate_blacklist:iter: matcher contains it...");
} else if let Some(ma) = matcher.get(name) {
debugln!("Validator::validate_blacklist:iter:{}: matcher contains it...", name);
should_err = ma.occurs > 0;
}
if should_err {
return Err(build_err!(self.0, *name, matcher));
}
}
Expand Down

0 comments on commit 58b5b4b

Please sign in to comment.