Accepting request 526018 from KDE:Qt5
1 OBS-URL: https://build.opensuse.org/request/show/526018 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libqt5-qtwayland?expand=0&rev=14
This commit is contained in:
parent
6c37820497
commit
8c0239941c
@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Sep 14 07:16:03 UTC 2017 - fabian@ritter-vogt.de
|
||||
|
||||
- Add patch to workaround crash due to nullptr deref (kde#381630):
|
||||
* workaround-null-object.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jul 1 08:15:32 UTC 2017 - lbeltrame@kde.org
|
||||
|
||||
|
@ -31,6 +31,8 @@ Group: Development/Libraries/X11
|
||||
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 @@ Examples for libqt5-qtwayland module.
|
||||
|
||||
%prep
|
||||
%setup -q -n qtwayland-opensource-src-%{real_version}
|
||||
%patch1 -p1
|
||||
|
||||
%post -n libQt5WaylandCompositor5 -p /sbin/ldconfig
|
||||
|
||||
|
21
workaround-null-object.patch
Normal file
21
workaround-null-object.patch
Normal file
@ -0,0 +1,21 @@
|
||||
From: Fabian Vogt <fabian@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;
|
Loading…
x
Reference in New Issue
Block a user