aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKostya Shishkov <kostya.shishkov@gmail.com>2021-09-29 12:46:08 +0200
committerKostya Shishkov <kostya.shishkov@gmail.com>2021-09-29 12:46:08 +0200
commit3e2a4e886fd3425851e3d93dd7097c1eb6548489 (patch)
treeb75d2d76a7cb208bcbdd1d8f5c2b8df7f7bb722c
parent86c54d88ca20815841fb90764d7854e5746ce7b4 (diff)
downloadnihav-encoder-3e2a4e886fd3425851e3d93dd7097c1eb6548489.tar.gz
do not ignore boolean "noX" options
-rw-r--r--src/main.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/main.rs b/src/main.rs
index fadb2b9..d677791 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -89,7 +89,12 @@ macro_rules! parse_and_apply_options {
for opt in $in_opts.iter() {
let mut found = false;
for opt_def in opt_def.iter() {
- if opt.name == opt_def.name {
+ let mut matches = opt.name == opt_def.name;
+ if !matches && opt.name.starts_with("no") {
+ let (_, name) = opt.name.split_at(2);
+ matches = name == opt_def.name;
+ }
+ if matches {
let arg = if let Some(ref str) = opt.value { Some(str) } else { None };
let ret = opt_def.parse(&opt.name, arg);
if let Ok((val, _)) = ret {