diff --git a/src/plugins/bineditor/bineditorplugin.cpp b/src/plugins/bineditor/bineditorplugin.cpp index 87c9fc2fa7e..61d4c75205b 100644 --- a/src/plugins/bineditor/bineditorplugin.cpp +++ b/src/plugins/bineditor/bineditorplugin.cpp @@ -2352,7 +2352,7 @@ static BinEditorFactoryService &binEditorService() ///////////////////////////////// BinEditorFactory ////////////////////////////////// -class BinEditorFactory final : public QObject, public IEditorFactory +class BinEditorFactory final : public IEditorFactory { public: BinEditorFactory() @@ -2367,13 +2367,11 @@ public: } }; -static BinEditorFactory &binEditorFactory() +void setupBinEditor() { static BinEditorFactory theBinEditorFactory; - return theBinEditorFactory; } - ///////////////////////////////// BinEditorPlugin ////////////////////////////////// class BinEditorPlugin final : public ExtensionSystem::IPlugin @@ -2384,13 +2382,12 @@ class BinEditorPlugin final : public ExtensionSystem::IPlugin ~BinEditorPlugin() final { ExtensionSystem::PluginManager::removeObject(&binEditorService()); - ExtensionSystem::PluginManager::removeObject(&binEditorFactory()); } void initialize() final { + setupBinEditor(); ExtensionSystem::PluginManager::addObject(&binEditorService()); - ExtensionSystem::PluginManager::addObject(&binEditorFactory()); } };