From 47ae652577a1013736a04e3c9a105b9094fe1ed6 Mon Sep 17 00:00:00 2001 From: Katja Marttila Date: Thu, 11 Oct 2018 12:31:17 +0300 Subject: Do not reset core data values in restart Do not reset core data values as that removes all data set using setValue() which are needed. Restart is called when pressing 'Restart' after maintenancetool finish page or when changing settings from Settings Dialog. Task-number QTIFW-504 Change-Id: I0713b0371811957b93623433d26f0b10e4c8fb12 Reviewed-by: Janne Anttila Reviewed-by: Jani Heikkinen --- src/libs/installer/packagemanagercore.cpp | 9 ++++----- src/libs/installer/packagemanagercore.h | 2 +- src/sdk/installerbase.cpp | 12 ++---------- src/sdk/tabcontroller.cpp | 12 +----------- src/sdk/tabcontroller.h | 2 -- 5 files changed, 8 insertions(+), 29 deletions(-) diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp index bf78f99ff..0541cbeaa 100644 --- a/src/libs/installer/packagemanagercore.cpp +++ b/src/libs/installer/packagemanagercore.cpp @@ -449,17 +449,16 @@ void PackageManagerCore::writeMaintenanceConfigFiles() } /*! - Resets the class to its initial state and applies the values of the - parameters specified by \a params. + Resets the class to its initial state. */ -void PackageManagerCore::reset(const QHash ¶ms) +void PackageManagerCore::reset() { d->m_completeUninstall = false; d->m_needsHardRestart = false; d->m_status = PackageManagerCore::Unfinished; d->m_installerBaseBinaryUnreplaced.clear(); - - d->initialize(params); + d->m_coreCheckedHash.clear(); + d->m_componentsToInstallCalculated = false; } /*! diff --git a/src/libs/installer/packagemanagercore.h b/src/libs/installer/packagemanagercore.h index 2a235bd44..629b36766 100644 --- a/src/libs/installer/packagemanagercore.h +++ b/src/libs/installer/packagemanagercore.h @@ -125,7 +125,7 @@ public: bool fetchCompressedPackagesTree(); bool run(); - void reset(const QHash ¶ms); + void reset(); void setGuiObject(QObject *gui); QObject *guiObject() const; diff --git a/src/sdk/installerbase.cpp b/src/sdk/installerbase.cpp index 5d5028be1..872600f19 100644 --- a/src/sdk/installerbase.cpp +++ b/src/sdk/installerbase.cpp @@ -243,13 +243,11 @@ int InstallerBase::run() .isSet(QLatin1String(CommandLineOptions::CreateLocalRepository)) || m_core->settings().createLocalRepository()); - QHash params; const QStringList positionalArguments = parser.positionalArguments(); foreach (const QString &argument, positionalArguments) { if (argument.contains(QLatin1Char('='))) { const QString name = argument.section(QLatin1Char('='), 0, 0); const QString value = argument.section(QLatin1Char('='), 1, 1); - params.insert(name, value); m_core->setValue(name, value); } } @@ -308,17 +306,11 @@ int InstallerBase::run() //create the wizard GUI TabController controller(0); controller.setManager(m_core); - controller.setManagerParams(params); controller.setControlScript(controlScript); - if (m_core->isInstaller()) { + if (m_core->isInstaller()) controller.setGui(new InstallerGui(m_core)); - } - else { + else controller.setGui(new MaintenanceGui(m_core)); - //Start listening to setValue changes that newly installed components might have - connect(m_core, &QInstaller::PackageManagerCore::valueChanged, &controller, - &TabController::updateManagerParams); - } QInstaller::PackageManagerCore::Status status = QInstaller::PackageManagerCore::Status(controller.init()); diff --git a/src/sdk/tabcontroller.cpp b/src/sdk/tabcontroller.cpp index 760e7dc38..dc4549d50 100644 --- a/src/sdk/tabcontroller.cpp +++ b/src/sdk/tabcontroller.cpp @@ -102,11 +102,6 @@ void TabController::setManager(QInstaller::PackageManagerCore *core) d->m_core = core; } -void TabController::setManagerParams(const QHash ¶ms) -{ - d->m_params = params; -} - // -- public slots int TabController::init() @@ -143,8 +138,8 @@ int TabController::init() void TabController::restartWizard() { + d->m_core->reset(); if (d->m_networkSettingsChanged) { - d->m_core->reset(d->m_params); d->m_networkSettingsChanged = false; d->m_core->settings().setFtpProxy(d->m_settings.ftpProxy()); @@ -199,8 +194,3 @@ void TabController::onNetworkSettingsChanged(const QInstaller::Settings &setting d->m_settings = settings; d->m_networkSettingsChanged = true; } - -void TabController::updateManagerParams(const QString &key, const QString &value) -{ - d->m_params.insert(key, value); -} diff --git a/src/sdk/tabcontroller.h b/src/sdk/tabcontroller.h index a314cb15b..5fc63aff3 100644 --- a/src/sdk/tabcontroller.h +++ b/src/sdk/tabcontroller.h @@ -51,13 +51,11 @@ public: void setGui(QInstaller::PackageManagerGui *gui); void setManager(QInstaller::PackageManagerCore *core); - void setManagerParams(const QHash ¶ms); void setControlScript(const QString &script); public Q_SLOTS: int init(); - void updateManagerParams(const QString &key, const QString &value); private Q_SLOTS: void restartWizard(); -- cgit v1.2.3