diff options
author | Thomas Zander <zander@kde.org> | 2010-03-06 18:39:39 +0100 |
---|---|---|
committer | Thomas Zander <zander@kde.org> | 2010-03-06 18:39:39 +0100 |
commit | df8fe0ebc356a8a3d919bb4ff9f2a0bd859d6f58 (patch) | |
tree | 3f856b0024da05eb7e44553526dd8f3846265c2f | |
parent | f26fb767a35cee2ac2a130e406539944295c03e9 (diff) | |
download | svn2git-df8fe0ebc356a8a3d919bb4ff9f2a0bd859d6f58.tar svn2git-df8fe0ebc356a8a3d919bb4ff9f2a0bd859d6f58.tar.gz svn2git-df8fe0ebc356a8a3d919bb4ff9f2a0bd859d6f58.tar.bz2 svn2git-df8fe0ebc356a8a3d919bb4ff9f2a0bd859d6f58.tar.xz svn2git-df8fe0ebc356a8a3d919bb4ff9f2a0bd859d6f58.zip |
Update with vng version; Fix command line parser reporting wrong options
-rw-r--r-- | src/CommandLineParser.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/CommandLineParser.cpp b/src/CommandLineParser.cpp index 62f0f39..7e7658a 100644 --- a/src/CommandLineParser.cpp +++ b/src/CommandLineParser.cpp @@ -198,7 +198,7 @@ void CommandLineParser::Private::parse() bool optionsAllowed = true; ParsedOption option; OptionDefinition currentDefinition; - for(int i = 1; i < argumentCount; i++) { + for (int i = 1; i < argumentCount; i++) { QString arg = QString::fromLocal8Bit(argumentStrings[i]); if (optionsAllowed) { if (arg == QLatin1String("--")) { @@ -214,9 +214,11 @@ void CommandLineParser::Private::parse() continue; } if (arg[0].unicode() == '-' && arg.length() > 1) { - for(int x = 1; x < arg.length(); x++) { + for (int x = 1; x < arg.length(); x++) { + bool resolved = false; foreach (OptionDefinition definition, definitions) { if (definition.shortName == arg[x]) { + resolved = true; processor.next(option); currentDefinition = definition; option.option = definition.name; @@ -228,7 +230,7 @@ void CommandLineParser::Private::parse() break; } } - if (option.option.isEmpty()) { // nothing found; copy char so it ends up in unrecognized + if (!resolved) { // nothing found; copy char so it ends up in unrecognized option.option = arg[x]; processor.next(option); } |