summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2018-01-18 11:02:23 +0100
committerLiang Qi <liang.qi@qt.io>2018-01-18 11:02:23 +0100
commitc91348767801bceeaca130451ebdb27c59fa1c5c (patch)
treeb85c6b4d9158292e2d9677126de2d4dee48c48d2
parentbf09c7a1493c01a65ee0f110b37a04e653edc08e (diff)
parent83db09bd0acaafb256880e3a217ed9df0641a00a (diff)
Merge remote-tracking branch 'origin/5.9.4' into 5.9
-rw-r--r--dist/changes-5.9.435
-rw-r--r--src/client/qwaylandbuffer.cpp2
-rw-r--r--src/client/qwaylandbuffer_p.h6
-rw-r--r--src/client/qwaylandxdgshellv6.cpp2
-rw-r--r--src/plugins/hardwareintegration/client/wayland-egl/wayland-egl.pro2
5 files changed, 43 insertions, 4 deletions
diff --git a/dist/changes-5.9.4 b/dist/changes-5.9.4
new file mode 100644
index 000000000..70a2f54db
--- /dev/null
+++ b/dist/changes-5.9.4
@@ -0,0 +1,35 @@
+Qt 5.9.4 is a bug-fix release. It maintains both forward and backward
+compatibility (source and binary) with Qt 5.9.0.
+
+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.9 series is binary compatible with the 5.8.x series.
+Applications compiled for 5.8 will continue to run with 5.9. Exception:
+between Qt 5.8.0 and 5.9.0 the QWaylandQuickOutput class was changed
+in a binary incompatible way.
+
+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.
+
+
+****************************************************************************
+* Qt Wayland QPA Plugin 5.9.4 Changes *
+****************************************************************************
+
+ - [QTBUG-64631] Fix freeze on resize with Weston and Qt Wayland Compositors
+
+****************************************************************************
+* Qt Wayland Compositor API 5.9.4 Changes *
+****************************************************************************
+
+ - Fix memory leak when client attached a new Wayland buffer.
+
+ - [QTBUG-64841] Fix decoding of multi-planar surfaces (YUV video)
diff --git a/src/client/qwaylandbuffer.cpp b/src/client/qwaylandbuffer.cpp
index 076a0d57d..a0fcc532f 100644
--- a/src/client/qwaylandbuffer.cpp
+++ b/src/client/qwaylandbuffer.cpp
@@ -66,7 +66,7 @@ void QWaylandBuffer::init(wl_buffer *buf)
void QWaylandBuffer::release(void *data, wl_buffer *)
{
- static_cast<QWaylandBuffer *>(data)->mBusy--;
+ static_cast<QWaylandBuffer *>(data)->mBusy = false;
}
const wl_buffer_listener QWaylandBuffer::listener = {
diff --git a/src/client/qwaylandbuffer_p.h b/src/client/qwaylandbuffer_p.h
index b3513d151..9e8cba2e4 100644
--- a/src/client/qwaylandbuffer_p.h
+++ b/src/client/qwaylandbuffer_p.h
@@ -73,14 +73,14 @@ public:
virtual QSize size() const = 0;
virtual int scale() const { return 1; }
- void setBusy() { mBusy++; }
- bool busy() const { return mBusy > 0; }
+ void setBusy() { mBusy = true; }
+ bool busy() const { return mBusy; }
protected:
struct wl_buffer *mBuffer;
private:
- int mBusy;
+ bool mBusy;
static void release(void *data, wl_buffer *);
static const wl_buffer_listener listener;
diff --git a/src/client/qwaylandxdgshellv6.cpp b/src/client/qwaylandxdgshellv6.cpp
index cd81778c7..7473174d1 100644
--- a/src/client/qwaylandxdgshellv6.cpp
+++ b/src/client/qwaylandxdgshellv6.cpp
@@ -125,6 +125,8 @@ QWaylandXdgSurfaceV6::QWaylandXdgSurfaceV6(QWaylandXdgShellV6 *shell, ::zxdg_sur
QWaylandXdgSurfaceV6::~QWaylandXdgSurfaceV6()
{
+ if (m_toplevel)
+ zxdg_toplevel_v6_destroy(m_toplevel->object());
if (m_popup)
zxdg_popup_v6_destroy(m_popup->object());
destroy();
diff --git a/src/plugins/hardwareintegration/client/wayland-egl/wayland-egl.pro b/src/plugins/hardwareintegration/client/wayland-egl/wayland-egl.pro
index d85c5efaa..409cd37d7 100644
--- a/src/plugins/hardwareintegration/client/wayland-egl/wayland-egl.pro
+++ b/src/plugins/hardwareintegration/client/wayland-egl/wayland-egl.pro
@@ -7,6 +7,8 @@ OTHER_FILES += \
SOURCES += main.cpp
+TARGET = qt-plugin-wayland-egl
+
PLUGIN_TYPE = wayland-graphics-integration-client
PLUGIN_CLASS_NAME = QWaylandEglClientBufferPlugin
load(qt_plugin)