diff options
author | Paul Olav Tvete <paul.tvete@qt.io> | 2016-11-22 15:45:28 +0100 |
---|---|---|
committer | Paul Olav Tvete <paul.tvete@qt.io> | 2016-11-23 09:46:23 +0000 |
commit | 36dcbb054ec84f6d93d755d905ad3d9bcadb2900 (patch) | |
tree | fc52053a0f294a5fb4a8a0b1d998809047024f02 | |
parent | 893fd8540f2a2182a5e28fc88d59310f0aff8afe (diff) | |
download | qtwayland-36dcbb054ec84f6d93d755d905ad3d9bcadb2900.tar.gz |
Fix crash on exit
Make sure that QWaylandDrag and QWaylandClientBufferIntegration are
destructed before the QWaylandDisplay.
Change-Id: I606154c9861a51d7cf3e5afb16d4f805ab9368b8
Reviewed-by: Jan Arne Petersen <jan.petersen@kdab.com>
Reviewed-by: Johan Helsing <johan.helsing@qt.io>
-rw-r--r-- | src/client/qwaylandintegration_p.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/client/qwaylandintegration_p.h b/src/client/qwaylandintegration_p.h index 39bd812d..1689581a 100644 --- a/src/client/qwaylandintegration_p.h +++ b/src/client/qwaylandintegration_p.h @@ -112,6 +112,11 @@ public: virtual QWaylandServerBufferIntegration *serverBufferIntegration() const; virtual QWaylandShellIntegration *shellIntegration() const; +private: + // NOTE: mDisplay *must* be destructed after mDrag and mClientBufferIntegration. + // Do not move this definition into the private section at the bottom. + QScopedPointer<QWaylandDisplay> mDisplay; + protected: QScopedPointer<QWaylandClientBufferIntegration> mClientBufferIntegration; QScopedPointer<QWaylandServerBufferIntegration> mServerBufferIntegration; @@ -130,7 +135,6 @@ private: QScopedPointer<QPlatformClipboard> mClipboard; QScopedPointer<QPlatformDrag> mDrag; #endif - QScopedPointer<QWaylandDisplay> mDisplay; QScopedPointer<QPlatformNativeInterface> mNativeInterface; QScopedPointer<QPlatformInputContext> mInputContext; #if QT_CONFIG(accessibility) |