diff options
Diffstat (limited to 'src/libs/installer/globalsettingsoperation.cpp')
-rw-r--r-- | src/libs/installer/globalsettingsoperation.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/libs/installer/globalsettingsoperation.cpp b/src/libs/installer/globalsettingsoperation.cpp index 99fa2c156..b8dda3559 100644 --- a/src/libs/installer/globalsettingsoperation.cpp +++ b/src/libs/installer/globalsettingsoperation.cpp @@ -112,6 +112,13 @@ Operation *GlobalSettingsOperation::clone() const QSettingsWrapper *GlobalSettingsOperation::setup(QString *key, QString *value, const QStringList &arguments) { + if (arguments.count() != 3 && arguments.count() != 4) { + setError(InvalidArguments); + setErrorString(tr("Invalid arguments in %0: %1 arguments given, %2 expected%3.") + .arg(name()).arg(arguments.count()).arg(tr("3 or 4"), QLatin1String(""))); + return 0; + } + if (arguments.count() == 4) { const QString &company = arguments.at(0); const QString &application = arguments.at(1); @@ -125,8 +132,5 @@ QSettingsWrapper *GlobalSettingsOperation::setup(QString *key, QString *value, c return new QSettingsWrapper(filename, QSettingsWrapper::NativeFormat); } - setError(InvalidArguments); - setErrorString(tr("Invalid arguments in %0: %1 arguments given, at least 3 expected.") - .arg(name()).arg(arguments.count())); return 0; } |