summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakayuki ORITO <iori.ayane@gmail.com>2018-03-12 21:37:51 +0900
committerKatja Marttila <katja.marttila@qt.io>2018-03-14 06:05:53 +0000
commitb4d77f8ccb483784468c4ec2fce8a2c4c51b1d7d (patch)
tree386ab533587f66ab7194fe6b41548a77133a379e
parent35af20a8ed477f53e3a82b3d32d9cf44e5b0dc34 (diff)
Fix the maintenancetool that failing to elevate to admin
It fails to output logs in ~PackageManagerCore() when using '--checkupdates'. It is installed in 'C:\Program Files (x86)'(needs admin rights). Disable the admin query. Because it does not need the query for checking the updates. Change-Id: I8cbd5823287a23d52c2f1a7f1fae95979314e441 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
-rw-r--r--src/libs/installer/packagemanagercore.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp
index 07afb4c7b..c905caaf1 100644
--- a/src/libs/installer/packagemanagercore.cpp
+++ b/src/libs/installer/packagemanagercore.cpp
@@ -846,12 +846,13 @@ PackageManagerCore::PackageManagerCore(qint64 magicmaker, const QList<OperationB
// Creates and initializes a remote client, makes us get admin rights for QFile, QSettings
// and QProcess operations. Init needs to called to set the server side authorization key.
- RemoteClient::instance().init(socketName, key, mode, Protocol::StartAs::SuperUser);
+ if (!d->isUpdater()) {
+ RemoteClient::instance().init(socketName, key, mode, Protocol::StartAs::SuperUser);
+ RemoteClient::instance().setAuthorizationFallbackDisabled(settings().disableAuthorizationFallback());
+ }
d->initialize(QHash<QString, QString>());
- RemoteClient::instance().setAuthorizationFallbackDisabled(settings().disableAuthorizationFallback());
-
//
// Sanity check to detect a broken installations with missing operations.
// Every installed package should have at least one MinimalProgress operation.