浏览代码

Fix bug in options parsing

Sam Jaffe 4 年之前
父节点
当前提交
cd1585bec0
共有 1 个文件被更改,包括 1 次插入2 次删除
  1. 1 2
      include/program_args/arguments_impl.hpp

+ 1 - 2
include/program_args/arguments_impl.hpp

@@ -129,8 +129,7 @@ Arguments<Impl>::Arguments(int argc, char const * const * const argv) {
         ++flags[id(arg)];
         ++flags[id(arg)];
       }
       }
     } else if (is_option(arg)) {
     } else if (is_option(arg)) {
-      options[id(arg)].emplace_back(arg);
-      ++i;
+      options[id(arg)].emplace_back(argv[++i]);
     } else if (is_flag(abbrev) && arg.find_last_not_of("0123456789") == 1) {
     } else if (is_flag(abbrev) && arg.find_last_not_of("0123456789") == 1) {
       flags[id(abbrev)] = std::stoi(arg.substr(2));
       flags[id(abbrev)] = std::stoi(arg.substr(2));
     } else if (is_flag(abbrev)) {
     } else if (is_flag(abbrev)) {