diff options
Diffstat (limited to 'src/launcher-lib')
-rw-r--r-- | src/launcher-lib/applicationmanagerwindow.cpp | 5 | ||||
-rw-r--r-- | src/launcher-lib/launchermain.cpp | 4 | ||||
-rw-r--r-- | src/launcher-lib/launchermain.h | 2 |
3 files changed, 6 insertions, 5 deletions
diff --git a/src/launcher-lib/applicationmanagerwindow.cpp b/src/launcher-lib/applicationmanagerwindow.cpp index d5d6d441..f2f4bd5b 100644 --- a/src/launcher-lib/applicationmanagerwindow.cpp +++ b/src/launcher-lib/applicationmanagerwindow.cpp @@ -43,7 +43,7 @@ QT_BEGIN_NAMESPACE_AM class ApplicationManagerWindowPrivate { public: - LauncherMain *launcherMain = nullptr; + QPointer<LauncherMain> launcherMain = nullptr; }; @@ -126,7 +126,8 @@ ApplicationManagerWindow::ApplicationManagerWindow(QWindow *parent) ApplicationManagerWindow::~ApplicationManagerWindow() { - d->launcherMain->clearWindowPropertyCache(this); + if (d->launcherMain) + d->launcherMain->clearWindowPropertyCache(this); delete d; } diff --git a/src/launcher-lib/launchermain.cpp b/src/launcher-lib/launchermain.cpp index 5bc567b0..307afc07 100644 --- a/src/launcher-lib/launchermain.cpp +++ b/src/launcher-lib/launchermain.cpp @@ -67,8 +67,8 @@ LauncherMain *LauncherMain::instance() void LauncherMain::registerWaylandExtensions() Q_DECL_NOEXCEPT { #if defined(QT_WAYLANDCLIENT_LIB) - m_waylandExtension = new WaylandQtAMClientExtension(); - connect(m_waylandExtension, &WaylandQtAMClientExtension::windowPropertyChanged, + m_waylandExtension.reset(new WaylandQtAMClientExtension()); + connect(m_waylandExtension.get(), &WaylandQtAMClientExtension::windowPropertyChanged, this, &LauncherMain::windowPropertyChanged); #endif } diff --git a/src/launcher-lib/launchermain.h b/src/launcher-lib/launchermain.h index dccad3c9..b01fe218 100644 --- a/src/launcher-lib/launchermain.h +++ b/src/launcher-lib/launchermain.h @@ -100,7 +100,7 @@ private: QStringList m_iconThemeSearchPaths; QVariant m_useAMConsoleLogger; #if defined(QT_WAYLANDCLIENT_LIB) - WaylandQtAMClientExtension *m_waylandExtension = nullptr; + QScopedPointer<WaylandQtAMClientExtension> m_waylandExtension; #endif }; |