backport 5.8 patch for wayland crasher (#1403500,QTBUG-55583)
This commit is contained in:
parent
bb48598d85
commit
cf267c4766
|
@ -0,0 +1,38 @@
|
|||
From 84ea00d47049d882f2fabf1446ec6c6eb5fe3038 Mon Sep 17 00:00:00 2001
|
||||
From: J-P Nurmi <jpnurmi@qt.io>
|
||||
Date: Tue, 6 Dec 2016 16:30:31 +0100
|
||||
Subject: [PATCH] QGtk3Dialog: don't crash on Wayland
|
||||
|
||||
Check if it's an X11 window before calling XSetTransientForHint().
|
||||
No transient parent will be set for GTK+ dialogs on Wayland. That
|
||||
has to be implemented separately.
|
||||
|
||||
Task-number: QTBUG-55583
|
||||
Change-Id: Iabc2a72681c8157bb2f2fe500892853aa397106b
|
||||
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
|
||||
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
||||
---
|
||||
src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp | 10 ++++++----
|
||||
1 file changed, 6 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp b/src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp
|
||||
index ba5089a..699b058 100644
|
||||
--- a/src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp
|
||||
+++ b/src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp
|
||||
@@ -135,10 +135,12 @@ bool QGtk3Dialog::show(Qt::WindowFlags flags, Qt::WindowModality modality, QWind
|
||||
|
||||
GdkWindow *gdkWindow = gtk_widget_get_window(gtkWidget);
|
||||
if (parent) {
|
||||
- GdkDisplay *gdkDisplay = gdk_window_get_display(gdkWindow);
|
||||
- XSetTransientForHint(gdk_x11_display_get_xdisplay(gdkDisplay),
|
||||
- gdk_x11_window_get_xid(gdkWindow),
|
||||
- parent->winId());
|
||||
+ if (GDK_IS_X11_WINDOW(gdkWindow)) {
|
||||
+ GdkDisplay *gdkDisplay = gdk_window_get_display(gdkWindow);
|
||||
+ XSetTransientForHint(gdk_x11_display_get_xdisplay(gdkDisplay),
|
||||
+ gdk_x11_window_get_xid(gdkWindow),
|
||||
+ parent->winId());
|
||||
+ }
|
||||
}
|
||||
|
||||
if (modality != Qt::NonModal) {
|
|
@ -66,7 +66,7 @@ BuildRequires: pkgconfig(libsystemd)
|
|||
Name: qt5-qtbase
|
||||
Summary: Qt5 - QtBase components
|
||||
Version: 5.7.1
|
||||
Release: 9%{?dist}
|
||||
Release: 10%{?dist}
|
||||
|
||||
# See LGPL_EXCEPTIONS.txt, for exception details
|
||||
License: LGPLv2 with exceptions or GPLv3 with exceptions
|
||||
|
@ -124,6 +124,10 @@ Patch63: qt5-qtbase-5.7.1-openssl11.patch
|
|||
Patch64: qt5-qtbase-5.7.1-firebird.patch
|
||||
|
||||
## upstream patches
|
||||
# 5.8 branch
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1403500
|
||||
# https://bugreports.qt.io/browse/QTBUG-55583
|
||||
Patch100: qt5-qtbase-5.8-QTBUG-55583.patch
|
||||
|
||||
# Do not check any files in %%{_qt5_plugindir}/platformthemes/ for requires.
|
||||
# Those themes are there for platform integration. If the required libraries are
|
||||
|
@ -354,6 +358,7 @@ Qt5 libraries used for drawing widgets and OpenGL items.
|
|||
%setup -q -n %{qt_module}-opensource-src-%{version}
|
||||
|
||||
%patch4 -p1 -b .QTBUG-35459
|
||||
%patch100 -p1 -b .QTBUG-55583
|
||||
|
||||
%patch50 -p1 -b .QT_VERSION_CHECK
|
||||
%patch52 -p1 -b .moc_macros
|
||||
|
@ -965,6 +970,9 @@ fi
|
|||
|
||||
|
||||
%changelog
|
||||
* Mon Dec 19 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.7.1-10
|
||||
- backport 5.8 patch for wayland crasher (#1403500,QTBUG-55583)
|
||||
|
||||
* Fri Dec 09 2016 Rex Dieter <rdieter@fedoraproject.org> - 5.7.1-9
|
||||
- restore moc_system_defines.patch lost in 5.7.0 rebase
|
||||
|
||||
|
|
Loading…
Reference in New Issue