summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/globalsettingsoperation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/installer/globalsettingsoperation.cpp')
-rw-r--r--src/libs/installer/globalsettingsoperation.cpp10
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;
}