diff --git a/src/plugins/classview/classviewmanager.cpp b/src/plugins/classview/classviewmanager.cpp index f5c04a4a5f1..db5d7c7d40d 100644 --- a/src/plugins/classview/classviewmanager.cpp +++ b/src/plugins/classview/classviewmanager.cpp @@ -15,6 +15,8 @@ #include +#include + #include #include @@ -137,9 +139,8 @@ ParserTreeItem::ConstPtr ManagerPrivate::findItemByRoot(const QStandardItem *ite ///////////////////////////////// Manager ////////////////////////////////// -Manager::Manager(QObject *parent) - : QObject(parent), - d(new ManagerPrivate()) +Manager::Manager() + : d(new ManagerPrivate()) { d->m_parser = new Parser(); d->m_parser->moveToThread(&d->m_parserThread); @@ -403,9 +404,9 @@ void Manager::setFlatMode(bool flat) }, Qt::QueuedConnection); } -void setupClassViewManager(QObject *guard) +void setupClassViewManager() { - (void) new Manager(guard); + static GuardedObject theClassViewManager; } } // ClassView::Internal diff --git a/src/plugins/classview/classviewmanager.h b/src/plugins/classview/classviewmanager.h index 0df20995270..d7c42c374ad 100644 --- a/src/plugins/classview/classviewmanager.h +++ b/src/plugins/classview/classviewmanager.h @@ -16,7 +16,7 @@ class Manager final : public QObject { Q_OBJECT public: - explicit Manager(QObject *parent); + Manager(); ~Manager() final; static Manager *instance(); @@ -42,6 +42,6 @@ private: ManagerPrivate *d; }; -void setupClassViewManager(QObject *guard); +void setupClassViewManager(); } // ClassView::Internal diff --git a/src/plugins/classview/classviewplugin.cpp b/src/plugins/classview/classviewplugin.cpp index 4d069c469b4..3cf9772f6a8 100644 --- a/src/plugins/classview/classviewplugin.cpp +++ b/src/plugins/classview/classviewplugin.cpp @@ -26,7 +26,7 @@ class ClassViewPlugin final : public ExtensionSystem::IPlugin void initialize() final { setupClassViewNavigationWidgetFactory(); - setupClassViewManager(this); + setupClassViewManager(); } }; diff --git a/src/plugins/languageclient/languageclientplugin.cpp b/src/plugins/languageclient/languageclientplugin.cpp index b8af019f9a5..1595b6815ff 100644 --- a/src/plugins/languageclient/languageclientplugin.cpp +++ b/src/plugins/languageclient/languageclientplugin.cpp @@ -50,7 +50,7 @@ void LanguageClientPlugin::initialize() setupCallHierarchyFactory(); setupTypeHierarchyFactory(); setupLanguageClientProjectPanel(); - setupLanguageClientManager(this); + setupLanguageClientManager(); setupLanguageClientOutline(); #ifdef WITH_TESTS