Browse Source

Merge pull request #9889 from Piccirello/instantiate-search

Only instantiate SearchPluginManager as needed
adaptive-webui-19844
Mike Tzou 6 years ago committed by GitHub
parent
commit
a7c6e873d4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      src/app/application.cpp
  2. 8
      src/base/search/searchpluginmanager.cpp
  3. 1
      src/base/search/searchpluginmanager.h

3
src/app/application.cpp

@ -515,7 +515,6 @@ int Application::exec(const QStringList &params)
new RSS::Session; // create RSS::Session singleton new RSS::Session; // create RSS::Session singleton
new RSS::AutoDownloader; // create RSS::AutoDownloader singleton new RSS::AutoDownloader; // create RSS::AutoDownloader singleton
new SearchPluginManager;
#ifdef DISABLE_GUI #ifdef DISABLE_GUI
#ifndef DISABLE_WEBUI #ifndef DISABLE_WEBUI
@ -710,7 +709,6 @@ void Application::cleanup()
delete m_webui; delete m_webui;
#endif #endif
delete SearchPluginManager::instance();
delete RSS::AutoDownloader::instance(); delete RSS::AutoDownloader::instance();
delete RSS::Session::instance(); delete RSS::Session::instance();
@ -726,6 +724,7 @@ void Application::cleanup()
delete m_fileLogger; delete m_fileLogger;
Logger::freeInstance(); Logger::freeInstance();
IconProvider::freeInstance(); IconProvider::freeInstance();
SearchPluginManager::freeInstance();
Utils::Fs::removeDirRecursive(Utils::Fs::tempPath()); Utils::Fs::removeDirRecursive(Utils::Fs::tempPath());
#ifndef DISABLE_GUI #ifndef DISABLE_GUI

8
src/base/search/searchpluginmanager.cpp

@ -101,9 +101,17 @@ SearchPluginManager::~SearchPluginManager()
SearchPluginManager *SearchPluginManager::instance() SearchPluginManager *SearchPluginManager::instance()
{ {
if (!m_instance)
m_instance = new SearchPluginManager;
return m_instance; return m_instance;
} }
void SearchPluginManager::freeInstance()
{
if (m_instance)
delete m_instance;
}
QStringList SearchPluginManager::allPlugins() const QStringList SearchPluginManager::allPlugins() const
{ {
return m_plugins.keys(); return m_plugins.keys();

1
src/base/search/searchpluginmanager.h

@ -62,6 +62,7 @@ public:
~SearchPluginManager() override; ~SearchPluginManager() override;
static SearchPluginManager *instance(); static SearchPluginManager *instance();
static void freeInstance();
QStringList allPlugins() const; QStringList allPlugins() const;
QStringList enabledPlugins() const; QStringList enabledPlugins() const;

Loading…
Cancel
Save