summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/libs/installer/packagemanagercore_p.cpp3
-rw-r--r--src/libs/installer/packagemanagergui.cpp1
2 files changed, 2 insertions, 2 deletions
diff --git a/src/libs/installer/packagemanagercore_p.cpp b/src/libs/installer/packagemanagercore_p.cpp
index dc6b775f1..daa0158e8 100644
--- a/src/libs/installer/packagemanagercore_p.cpp
+++ b/src/libs/installer/packagemanagercore_p.cpp
@@ -1290,7 +1290,6 @@ void PackageManagerCorePrivate::writeUninstaller(OperationList performedOperatio
writeUninstallerBinary(&replacementBinary, replacementBinary.size(), true);
qDebug() << "Wrote the binary with the new replacement.";
- m_needsHardRestart = true;
newBinaryWritten = true;
replacementExists = true;
} catch (const Error &error) {
@@ -1389,7 +1388,7 @@ void PackageManagerCorePrivate::writeUninstaller(OperationList performedOperatio
deferredRename(dataFile + QLatin1String(".new"), dataFile, false);
if (newBinaryWritten) {
- const bool restart = replacementExists && isUpdater() && (!statusCanceledOrFailed());
+ const bool restart = replacementExists && isUpdater() && (!statusCanceledOrFailed()) && m_needsHardRestart;
deferredRename(uninstallerName() + QLatin1String(".new"), uninstallerName(), restart);
qDebug() << "Maintenance tool restart:" << (restart ? "true." : "false.");
}
diff --git a/src/libs/installer/packagemanagergui.cpp b/src/libs/installer/packagemanagergui.cpp
index 247872614..fc81ad9ff 100644
--- a/src/libs/installer/packagemanagergui.cpp
+++ b/src/libs/installer/packagemanagergui.cpp
@@ -524,6 +524,7 @@ void PackageManagerGui::cancelButtonClicked()
QDialog::reject();
}
} else {
+ m_core->setNeedsHardRestart(false);
QDialog::reject();
}
}