summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/packagemanagercore.cpp
diff options
context:
space:
mode:
authorKarsten Heimrich <karsten.heimrich@theqtcompany.com>2015-05-06 15:23:53 +0200
committerKarsten Heimrich <karsten.heimrich@theqtcompany.com>2015-05-06 19:55:51 +0000
commit478a8a1db3eed2c41d46da966003cc1722bd347d (patch)
treea9d7bcbdbd91332101ee85a2b44c4a76f85bd5ab /src/libs/installer/packagemanagercore.cpp
parenta6fdda83c338357b848fe710274949917c58768f (diff)
Remove pseudo static core instance, fixes autotests.
We need the core engine in operations anyway, so pass the pointer to the create function instead of setting it on our own after the operation was created. The only reason to introduce the static was the ~UpdateOperation() destructor, which now can get the value from its internal data instead of using the static instance call. Change-Id: Ide27542837355ec8c642a6687ca02977983f84fa Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
Diffstat (limited to 'src/libs/installer/packagemanagercore.cpp')
-rw-r--r--src/libs/installer/packagemanagercore.cpp13
1 files changed, 2 insertions, 11 deletions
diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp
index a3a7aae97..7ab12d855 100644
--- a/src/libs/installer/packagemanagercore.cpp
+++ b/src/libs/installer/packagemanagercore.cpp
@@ -335,8 +335,6 @@ static bool sNoForceInstallation = false;
static bool sVirtualComponentsVisible = false;
static bool sCreateLocalRepositoryFromBinary = false;
-PackageManagerCore *PackageManagerCore::m_instance = 0;
-
static bool componentMatches(const Component *component, const QString &name,
const QString &version = QString())
{
@@ -720,9 +718,6 @@ bool PackageManagerCore::fileExists(const QString &filePath) const
PackageManagerCore::PackageManagerCore()
: d(new PackageManagerCorePrivate(this))
{
- Q_ASSERT_X(m_instance == 0, Q_FUNC_INFO, "PackageManagerCore called more then once.");
- m_instance = this;
-
Repository::registerMetaType(); // register, cause we stream the type as QVariant
qRegisterMetaType<QInstaller::PackageManagerCore::Status>("QInstaller::PackageManagerCore::Status");
qRegisterMetaType<QInstaller::PackageManagerCore::WizardPage>("QInstaller::PackageManagerCore::WizardPage");
@@ -732,9 +727,6 @@ PackageManagerCore::PackageManagerCore(qint64 magicmaker, const QList<OperationB
const QString &socketName, const QString &key, Protocol::Mode mode)
: d(new PackageManagerCorePrivate(this, magicmaker, operations))
{
- Q_ASSERT_X(m_instance == 0, Q_FUNC_INFO, "PackageManagerCore called more then once.");
- m_instance = this;
-
Repository::registerMetaType(); // register, cause we stream the type as QVariant
qRegisterMetaType<QInstaller::PackageManagerCore::Status>("QInstaller::PackageManagerCore::Status");
qRegisterMetaType<QInstaller::PackageManagerCore::WizardPage>("QInstaller::PackageManagerCore::WizardPage");
@@ -783,7 +775,6 @@ PackageManagerCore::~PackageManagerCore()
QInstaller::VerboseWriter::instance()->setFileName(logFileName);
}
delete d;
- m_instance = 0;
RemoteClient::instance().setActive(false);
RemoteClient::instance().shutdown();
@@ -1681,7 +1672,7 @@ bool PackageManagerCore::operationExists(const QString &name)
static QSet<QString> existingOperations;
if (existingOperations.contains(name))
return true;
- QScopedPointer<Operation> op(KDUpdater::UpdateOperationFactory::instance().create(name));
+ QScopedPointer<Operation> op(KDUpdater::UpdateOperationFactory::instance().create(name, this));
if (!op.data())
return false;
existingOperations.insert(name);
@@ -1695,7 +1686,7 @@ bool PackageManagerCore::operationExists(const QString &name)
*/
bool PackageManagerCore::performOperation(const QString &name, const QStringList &arguments)
{
- QScopedPointer<Operation> op(KDUpdater::UpdateOperationFactory::instance().create(name));
+ QScopedPointer<Operation> op(KDUpdater::UpdateOperationFactory::instance().create(name, this));
if (!op.data())
return false;