From 701b84dc4813e6ab06dd2e9e6bd284cbd30317c3 Mon Sep 17 00:00:00 2001 From: Vladimir Golovnev Date: Wed, 30 Nov 2022 20:09:51 +0300 Subject: [PATCH] Destroy desktop integration at correct place Otherwise it is destructed in QObject destructor, i.e. after GUI application is already destructed. This can be related to some problems with system tray icon. PR #18108. Closes #18093. --- src/app/application.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/app/application.cpp b/src/app/application.cpp index 1b1bcfb85..4e4e1fc7a 100644 --- a/src/app/application.cpp +++ b/src/app/application.cpp @@ -706,7 +706,7 @@ try #ifndef DISABLE_GUI UIThemeManager::initInstance(); - m_desktopIntegration = new DesktopIntegration(this); + m_desktopIntegration = new DesktopIntegration; m_desktopIntegration->setToolTip(tr("Loading torrents...")); #ifndef Q_OS_MACOS auto *desktopIntegrationMenu = new QMenu; @@ -1201,6 +1201,7 @@ void Application::cleanup() ::ShutdownBlockReasonDestroy(reinterpret_cast(m_window->effectiveWinId())); #endif // Q_OS_WIN delete m_window; + delete m_desktopIntegration; UIThemeManager::freeInstance(); } #endif // DISABLE_GUI