summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2018-12-04 09:40:18 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2018-12-04 09:40:18 +0100
commit859d6654ef030494647147046778f4206c04d7f6 (patch)
treebafbbdaf0b1d4948e688a29e855c15331dcc3ff7
parentdccec9b282ae15fa65fd61698dd1cb47325e5c8e (diff)
parent9ce3088d226fddc18bcac170fa5cc5be3c29e371 (diff)
Merge remote-tracking branch 'origin/5.11.3' into 5.11
-rw-r--r--dist/changes-5.11.330
-rw-r--r--src/compositor/compositor_api/qwaylandquickitem_p.h2
-rw-r--r--src/compositor/compositor_api/qwaylandview.cpp4
3 files changed, 34 insertions, 2 deletions
diff --git a/dist/changes-5.11.3 b/dist/changes-5.11.3
new file mode 100644
index 00000000..c3f1060b
--- /dev/null
+++ b/dist/changes-5.11.3
@@ -0,0 +1,30 @@
+Qt 5.11.3 is a bug-fix release. It maintains both forward and backward
+compatibility (source and binary) with Qt 5.11.0 through 5.11.2.
+
+For more details, refer to the online documentation included in this
+distribution. The documentation is also available online:
+
+http://doc.qt.io/qt-5/index.html
+
+The Qt version 5.11 series is binary compatible with the 5.10.x series.
+Applications compiled for 5.10 will continue to run with 5.11.
+
+Some of the changes listed in this file include issue tracking numbers
+corresponding to tasks in the Qt Bug Tracker:
+
+https://bugreports.qt.io/
+
+Each of these identifiers can be entered in the bug tracker to obtain more
+information about a particular change.
+
+****************************************************************************
+* Compositor *
+****************************************************************************
+
+ - [QTBUG-70163] Fixed a bug where destroying a WaylandQuickItem would
+ delete the OpenGL texture for all other WaylandQuickItems using that
+ surface.
+ - Fixed a bug that caused some clients to abort in libwayland when a
+ surface left an output.
+ - [QTBUG-69384] QWaylandView::surfaceDestroyed is now emitted before the
+ surface is destroyed, fixing close animations.
diff --git a/src/compositor/compositor_api/qwaylandquickitem_p.h b/src/compositor/compositor_api/qwaylandquickitem_p.h
index f926d55e..28b8732d 100644
--- a/src/compositor/compositor_api/qwaylandquickitem_p.h
+++ b/src/compositor/compositor_api/qwaylandquickitem_p.h
@@ -154,7 +154,7 @@ public:
static QMutex *mutex;
QScopedPointer<QWaylandView> view;
- QWaylandSurface *oldSurface = nullptr;
+ QPointer<QWaylandSurface> oldSurface;
mutable QWaylandSurfaceTextureProvider *provider = nullptr;
bool paintEnabled = true;
bool touchEventsEnabled = true;
diff --git a/src/compositor/compositor_api/qwaylandview.cpp b/src/compositor/compositor_api/qwaylandview.cpp
index 12759377..1a6bf1a6 100644
--- a/src/compositor/compositor_api/qwaylandview.cpp
+++ b/src/compositor/compositor_api/qwaylandview.cpp
@@ -56,8 +56,10 @@ void QWaylandViewPrivate::markSurfaceAsDestroyed(QWaylandSurface *surface)
Q_ASSERT(surface == this->surface);
setSurface(nullptr);
+ QPointer<QWaylandView> deleteGuard(q);
emit q->surfaceDestroyed();
- clearFrontBuffer();
+ if (!deleteGuard.isNull())
+ clearFrontBuffer();
}
/*!