diff options
author | David Edmundson <davidedmundson@kde.org> | 2019-06-23 14:48:30 +0200 |
---|---|---|
committer | David Edmundson <davidedmundson@kde.org> | 2019-08-21 17:59:21 +0100 |
commit | 5d43a686fc3d5f13087a61e8ef216ecbbae0d15e (patch) | |
tree | e3304f1e0ce3e1b35aaaa22231d759d9837cd960 /src/client/qwaylandwindow_p.h | |
parent | 3e96fa1df8d2bc0ec8ab66abae1f20439b786b40 (diff) |
Client: Make handleUpdate aware of exposure changes
The wl_surface can be destroyed whilst a render is happening. Calling
wl_surface::frame after the window is reset can crash as wl_surface is
null.
Fixes: QTBUG-77747
Change-Id: I139a9b234cb6acba81d6c1d5fa58629904a25053
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Diffstat (limited to 'src/client/qwaylandwindow_p.h')
-rw-r--r-- | src/client/qwaylandwindow_p.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h index 23432e398..ed4061f0e 100644 --- a/src/client/qwaylandwindow_p.h +++ b/src/client/qwaylandwindow_p.h @@ -53,6 +53,8 @@ #include <QtCore/QWaitCondition> #include <QtCore/QMutex> +#include <QtCore/QReadWriteLock> + #include <QtGui/QIcon> #include <QtCore/QVariant> #include <QtCore/QLoggingCategory> @@ -272,6 +274,8 @@ private: static QMutex mFrameSyncMutex; static QWaylandWindow *mMouseGrab; + QReadWriteLock mSurfaceLock; + friend class QWaylandSubSurface; }; |