diff options
Diffstat (limited to 'src/libs/installer/packagemanagercore_p.cpp')
-rw-r--r-- | src/libs/installer/packagemanagercore_p.cpp | 3 |
1 files changed, 1 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."); } |