diff options
Diffstat (limited to 'src/corelib/tools/qcommandlineparser.cpp')
| -rw-r--r-- | src/corelib/tools/qcommandlineparser.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/corelib/tools/qcommandlineparser.cpp b/src/corelib/tools/qcommandlineparser.cpp index ffe1193fc34..5aa1cc9d697 100644 --- a/src/corelib/tools/qcommandlineparser.cpp +++ b/src/corelib/tools/qcommandlineparser.cpp @@ -653,7 +653,12 @@ bool QCommandLineParserPrivate::parseOptionValue(const QString &optionName, cons if (nameHashIt != nameHash.constEnd()) { const qsizetype assignPos = argument.indexOf(assignChar); const NameHash_t::mapped_type optionOffset = *nameHashIt; - const bool withValue = !commandLineOptionList.at(optionOffset).valueName().isEmpty(); + const QCommandLineOption &option = commandLineOptionList.at(optionOffset); + if (option.flags() & QCommandLineOption::IgnoreOptionsAfter) { + *argumentIterator = argsEnd; + return true; + } + const bool withValue = !option.valueName().isEmpty(); if (withValue) { if (assignPos == -1) { ++(*argumentIterator); |
