diff options
Diffstat (limited to 'src/corelib/tools/qcommandlineoption.cpp')
-rw-r--r-- | src/corelib/tools/qcommandlineoption.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/corelib/tools/qcommandlineoption.cpp b/src/corelib/tools/qcommandlineoption.cpp index 3c857c8def..b30f7d25b4 100644 --- a/src/corelib/tools/qcommandlineoption.cpp +++ b/src/corelib/tools/qcommandlineoption.cpp @@ -195,16 +195,19 @@ void QCommandLineOptionPrivate::setNames(const QStringList &nameList) if (nameList.isEmpty()) qWarning("QCommandLineOption: Options must have at least one name"); foreach (const QString &name, nameList) { - if (name.isEmpty()) + if (name.isEmpty()) { qWarning("QCommandLineOption: Option names cannot be empty"); - else if (name.startsWith(QLatin1Char('-'))) - qWarning("QCommandLineOption: Option names cannot start with a '-'"); - else if (name.startsWith(QLatin1Char('/'))) - qWarning("QCommandLineOption: Option names cannot start with a '/'"); - else if (name.contains(QLatin1Char('='))) - qWarning("QCommandLineOption: Option names cannot contain a '='"); - else - names.append(name); + } else { + const QChar c = name.at(0); + if (c == QLatin1Char('-')) + qWarning("QCommandLineOption: Option names cannot start with a '-'"); + else if (c == QLatin1Char('/')) + qWarning("QCommandLineOption: Option names cannot start with a '/'"); + else if (name.contains(QLatin1Char('='))) + qWarning("QCommandLineOption: Option names cannot contain a '='"); + else + names.append(name); + } } } |