Crash in QXcbWindow::setParent() due to NULL xcbScreen (QTBUG-50081, #1291003)
This commit is contained in:
parent
51f2110d6a
commit
23c5d626d9
44
0084-Fix-crash-because-of-NULL-screen-in-QXcbWindow.patch
Normal file
44
0084-Fix-crash-because-of-NULL-screen-in-QXcbWindow.patch
Normal file
@ -0,0 +1,44 @@
|
||||
From eaa3a9d0108cdf692f1686cafefb7b834f0e5af6 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?B=C5=82a=C5=BCej=20Szczygie=C5=82?= <spaz16@wp.pl>
|
||||
Date: Fri, 1 Jan 2016 20:02:42 +0100
|
||||
Subject: [PATCH 84/87] Fix crash because of NULL screen in QXcbWindow
|
||||
|
||||
Change-Id: If7bbe3ad1656dadcb098bcd3ece2e7b064eeb44d
|
||||
Task-number: QTBUG-50081
|
||||
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|
||||
---
|
||||
src/gui/kernel/qwindow.cpp | 14 ++++++--------
|
||||
1 file changed, 6 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp
|
||||
index e728d32..83e8777 100644
|
||||
--- a/src/gui/kernel/qwindow.cpp
|
||||
+++ b/src/gui/kernel/qwindow.cpp
|
||||
@@ -609,18 +609,16 @@ void QWindow::setParent(QWindow *parent)
|
||||
}
|
||||
|
||||
QObject::setParent(parent);
|
||||
- if (parent)
|
||||
+
|
||||
+ QPlatformWindow *parentPlatformWindow = parent ? parent->d_func()->platformWindow : Q_NULLPTR;
|
||||
+
|
||||
+ if (parentPlatformWindow)
|
||||
d->disconnectFromScreen();
|
||||
else
|
||||
d->connectToScreen(newScreen);
|
||||
|
||||
- if (d->platformWindow) {
|
||||
- if (parent && parent->d_func()->platformWindow) {
|
||||
- d->platformWindow->setParent(parent->d_func()->platformWindow);
|
||||
- } else {
|
||||
- d->platformWindow->setParent(0);
|
||||
- }
|
||||
- }
|
||||
+ if (d->platformWindow)
|
||||
+ d->platformWindow->setParent(parentPlatformWindow);
|
||||
|
||||
d->parentWindow = parent;
|
||||
|
||||
--
|
||||
2.5.0
|
||||
|
@ -39,7 +39,7 @@
|
||||
Summary: Qt5 - QtBase components
|
||||
Name: qt5-qtbase
|
||||
Version: 5.6.0
|
||||
Release: 0.17.%{prerelease}%{?dist}
|
||||
Release: 0.18.%{prerelease}%{?dist}
|
||||
|
||||
# See LGPL_EXCEPTIONS.txt, for exception details
|
||||
License: LGPLv2 with exceptions or GPLv3 with exceptions
|
||||
@ -91,6 +91,10 @@ Patch100: qtbase-opensource-src-5.4.0-QTBUG-43057.patch
|
||||
# https://codereview.qt-project.org/126102/
|
||||
Patch150: moc-get-the-system-defines-from-the-compiler-itself.patch
|
||||
|
||||
# https://bugreports.qt.io/browse/QTBUG-50081
|
||||
# https://codereview.qt-project.org/#/c/144896/
|
||||
Patch184: 0084-Fix-crash-because-of-NULL-screen-in-QXcbWindow.patch
|
||||
|
||||
# macros, be mindful to keep sync'd with macros.qt5
|
||||
Source10: macros.qt5
|
||||
%define _qt5 %{name}
|
||||
@ -863,6 +867,9 @@ fi
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Jan 04 2016 Rex Dieter <rdieter@fedoraproject.org> 5.6.0-0.18.beta
|
||||
- Crash in QXcbWindow::setParent() due to NULL xcbScreen (QTBUG-50081, #1291003)
|
||||
|
||||
* Mon Dec 21 2015 Rex Dieter <rdieter@fedoraproject.org> 5.6.0-0.17.beta
|
||||
- fix/update Release: tag
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user