Hello community,

here is the log from the commit of package libqt5-qtwayland for 
openSUSE:Factory checked in at 2017-09-17 22:37:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtwayland (Old)
 and      /work/SRC/openSUSE:Factory/.libqt5-qtwayland.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libqt5-qtwayland"

Sun Sep 17 22:37:03 2017 rev:14 rq:526018 version:5.9.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtwayland/libqt5-qtwayland.changes        
2017-07-08 12:24:45.316075302 +0200
+++ /work/SRC/openSUSE:Factory/.libqt5-qtwayland.new/libqt5-qtwayland.changes   
2017-09-17 22:37:04.375248770 +0200
@@ -1,0 +2,6 @@
+Thu Sep 14 07:16:03 UTC 2017 - fab...@ritter-vogt.de
+
+- Add patch to workaround crash due to nullptr deref (kde#381630):
+  * workaround-null-object.patch
+
+-------------------------------------------------------------------

New:
----
  workaround-null-object.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libqt5-qtwayland.spec ++++++
--- /var/tmp/diff_new_pack.Uz4NDR/_old  2017-09-17 22:37:05.047154303 +0200
+++ /var/tmp/diff_new_pack.Uz4NDR/_new  2017-09-17 22:37:05.047154303 +0200
@@ -31,6 +31,8 @@
 Url:            https://www.qt.io
 Source:         
https://download.qt.io/official_releases/qt/5.9/%{real_version}/submodules/%{tar_version}.tar.xz
 Source1:        baselibs.conf
+# PATCH-FIX-OPENSUSE
+Patch1:         workaround-null-object.patch
 BuildRequires:  fdupes
 BuildRequires:  libqt5-qtbase-private-headers-devel >= %{version}
 BuildRequires:  libqt5-qtdeclarative-private-headers-devel >= %{version}
@@ -101,6 +103,7 @@
 
 %prep
 %setup -q -n qtwayland-opensource-src-%{real_version}
+%patch1 -p1
 
 %post  -n libQt5WaylandCompositor5 -p /sbin/ldconfig
 

++++++ workaround-null-object.patch ++++++
From: Fabian Vogt <fab...@ritter-vogt.de>
Subject: Work around crash in QtWaylandClient::QWaylandEglWindow::updateSurface
References: kde#381630

object() is nullptr when it crashes, so do not try to reference it.
This is only a workaround as object() should never be nullptr AFAICT.
So far I haven't discovered any bad side effects.

Index: 
qtwayland-opensource-src-5.9.1/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
===================================================================
--- 
qtwayland-opensource-src-5.9.1.orig/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
+++ 
qtwayland-opensource-src-5.9.1/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp
@@ -112,7 +112,7 @@ void QWaylandEglWindow::updateSurface(bo
     // mesa's egl returns NULL if we try to create a, invalid wl_egl_window, 
however not all EGL
     // implementations may do that, so check the size ourself. Besides, we 
must deal with resizing
     // a valid window to 0x0, which would make it invalid. Hence, destroy it.
-    if (sizeWithMargins.isEmpty()) {
+    if (sizeWithMargins.isEmpty() || !object()) {
         if (m_eglSurface) {
             eglDestroySurface(m_clientBufferIntegration->eglDisplay(), 
m_eglSurface);
             m_eglSurface = 0;

Reply via email to