diff options
author | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-09-22 14:01:09 +0300 |
---|---|---|
committer | Katja Marttila <katja.marttila@qt.io> | 2020-10-01 08:13:11 +0300 |
commit | 4bf453fb84c67283c85180dcf964526534f0ef72 (patch) | |
tree | 1df9eda51c5572e39faae76ce8f28edce9c88f3b /src/sdk | |
parent | 2608853637d0bd98345c67a79656ff441209d60c (diff) |
Expand the sanity check for mutually exclusive options
Task-number: QTIFW-1744
Change-Id: I4a4fdcd2517028e05f9282c15a91a4fb83c24901
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Diffstat (limited to 'src/sdk')
-rw-r--r-- | src/sdk/main.cpp | 34 |
1 files changed, 23 insertions, 11 deletions
diff --git a/src/sdk/main.cpp b/src/sdk/main.cpp index ee4f9d74a..9b425bc98 100644 --- a/src/sdk/main.cpp +++ b/src/sdk/main.cpp @@ -85,17 +85,29 @@ int main(int argc, char *argv[]) QString sanityMessage; QStringList mutually; - if (parser.isSet(CommandLineOptions::scStartUpdaterLong)) - mutually << CommandLineOptions::scStartUpdaterLong; - if (parser.isSet(CommandLineOptions::scStartPackageManagerLong)) - mutually << CommandLineOptions::scStartPackageManagerLong; - if (parser.isSet(CommandLineOptions::scStartUninstallerLong)) - mutually << CommandLineOptions::scStartUninstallerLong; - // IFW 3.x.x style --updater option support provided for backward compatibility - if (parser.isSet(CommandLineOptions::scDeprecatedUpdater)) - mutually << CommandLineOptions::scDeprecatedUpdater; - - if (mutually.count() > 1) { + mutually = QInstaller::checkMutualOptions(parser, QStringList() + << CommandLineOptions::scStartUpdaterLong + << CommandLineOptions::scStartPackageManagerLong + << CommandLineOptions::scStartUninstallerLong + << CommandLineOptions::scDeprecatedUpdater); + + if (mutually.isEmpty()) { + mutually = QInstaller::checkMutualOptions(parser, QStringList() + << CommandLineOptions::scSystemProxyLong + << CommandLineOptions::scNoProxyLong); + } + if (mutually.isEmpty()) { + mutually = QInstaller::checkMutualOptions(parser, QStringList() + << CommandLineOptions::scAcceptMessageQuery + << CommandLineOptions::scRejectMessageQuery + << CommandLineOptions::scMessageDefaultAnswer); + } + if (mutually.isEmpty()) { + mutually = QInstaller::checkMutualOptions(parser, QStringList() + << CommandLineOptions::scStartServerLong + << CommandLineOptions::scStartClientLong); + } + if (!mutually.isEmpty()) { sanityMessage = QString::fromLatin1("The following options are mutually exclusive: %1.") .arg(mutually.join(QLatin1String(", "))); sanityCheck = false; |