summaryrefslogtreecommitdiff
path: root/dev-qt/qtwidgets
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-03-23 00:43:56 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-03-23 00:43:56 +0000
commitbe14af2d51852951dbfea41913a7dd9d1190151e (patch)
tree7db0aeb92a283f51af698d66f3771ffc3b044f6c /dev-qt/qtwidgets
parent5d09fc9f5630bcabb50afc96e20ff662a0771440 (diff)
gentoo auto-resync : 23:03:2023 - 00:43:55
Diffstat (limited to 'dev-qt/qtwidgets')
-rw-r--r--dev-qt/qtwidgets/Manifest2
-rw-r--r--dev-qt/qtwidgets/files/qtwidgets-5.15.8-QTBUG-104917.patch54
-rw-r--r--dev-qt/qtwidgets/qtwidgets-5.15.8-r4.ebuild68
3 files changed, 124 insertions, 0 deletions
diff --git a/dev-qt/qtwidgets/Manifest b/dev-qt/qtwidgets/Manifest
index 92a19a5e13a5..cb69fb5b7ef1 100644
--- a/dev-qt/qtwidgets/Manifest
+++ b/dev-qt/qtwidgets/Manifest
@@ -1,7 +1,9 @@
+AUX qtwidgets-5.15.8-QTBUG-104917.patch 2256 BLAKE2B d8c311af0e3b0829b33e7a7f3042d1d98945c96deecca5aada63639cf422d471756c346c5c5d4655c398160068fde6a63a54934f5f390a8555c1851af67cbb84 SHA512 368480f5ed2333036013bb2cfdcde44c9284b559a9d637e077477e2511f3fdd3a175f3aafce9ab48fd58269b2b2f38c54048a13fbf43a97272d68e9596f2429b
AUX qtwidgets-5.15.8-QTBUG-106569.patch 1986 BLAKE2B f8030cf8c3f683517d36a80fd3b8da575b74801adba771b8f267745877a809d92ff5f23fac0bde08efdcabc431338829cf96cb6d13eb4d43552a0bb7e3d7868e SHA512 19b6643361683c852d817d850108055ae86a27f658b0fd7dfa5b98bfe47374113ad4c149a120b48d25444d7d54ce645b01c3a94d4f980fc0055f2269961bbe48
DIST qtbase-5.15-gentoo-patchset-3.tar.xz 3856 BLAKE2B 0752426f9bc2dfa1ab2bc246b29f5d00305df05175a7801d7d5eddacfa46fcb605d9a317547edc01d3ef339f6effc2fcee7549cb7aecced37f0098166c70dbe2 SHA512 2515bea53232e76ca3e40bdaf1dd52fdf452052a2f40002ee91360d1fcceea3c5c2f5a8d2a3bfc0f9c2bacd61460a632c5b351accd73fd37b64985593219148e
DIST qtbase-5.15.8-gentoo-kde-5.tar.xz 793372 BLAKE2B f486a0275fdf4da28a88ba40b7e6f227267fa05e8f466f734f720e792de1796501d5f1fb4427a84ca2d709bfa07abd695ad59210f7fd11227b1bf465484736b8 SHA512 f51d7ee2d121acda1141b9816197afc57ac0176a12acc08a93c2a793694afb734f8f1ad280a5bf95170cf912e32edb4a6612befeb4198fec78a7e50bbb6a61cd
DIST qtbase-everywhere-opensource-src-5.15.8.tar.xz 50259432 BLAKE2B cb1b790a384a5cad9a95fdc448e275d48a68c6ee2addf08b40f9963cc5762fd7ab15852dea8392dc76da39f1565c1e23ddb5875c280f0177e802082f4b4f7f2b SHA512 29e8877bafdbc908072209f1b27a5040b022e2b71f17f4ab4cecd570adeae21597f9af7f1d38758760f3cb30376eeb15c5f066bf02c6e9a9e3a4d07f967046ce
EBUILD qtwidgets-5.15.8-r2.ebuild 1200 BLAKE2B 81fb29cbaccc25e1ee0a094551410909e1869ee23c85d1c86c05beb0c9f93046a1672a7619ba4a41fad91f59db5e6cba250d82263a57c960695cd69d5c713b60 SHA512 95a331bbaa646d7bbf48a183434300a64e887cb51a1c5a3bf2683267d4f99d479639fe394d043dfe00996933382c2c7f2f886638c9d9dcd404085138ae5bf2ca
EBUILD qtwidgets-5.15.8-r3.ebuild 1253 BLAKE2B da2efc3cd5815a3abe41aab2e9ce54ab309d22983f71d7790c911463ce574def908f02469b4a91fc0ea2be001fb52117535845c2df9c8db2be1d07000a56fb69 SHA512 050efc3b7bcfebf988f9ae73ccdc7512ccebca2cebf0865fb85c377fa16e5bcad217d6ede9b8ec9e4b0a7dd1ce39b44fd1abd7e536be1de06ed1734c4a8be6f8
+EBUILD qtwidgets-5.15.8-r4.ebuild 1314 BLAKE2B 4bbfed4cfd4aa2b328265a0c41f91a48104e3dd8806d3e204e8996ccd8548b18961d37d44d5a4e2264ab8884096227d0c87b98a53de10fa48fd1808a574fe60a SHA512 78f9ca3efd656b1aecb893bcf9d9862b70b35de0a3c96d8efc2e11729740f79f47a5f03151457ac9f7aaa09e3081477add753f5fc4e76e1ca3719c6abbb70d7e
MISC metadata.xml 559 BLAKE2B 3ea80a5e419db32987d68d7e5033fa75fa0ff22b31b0842fd7ead902172cbe83650b0bbdf8657a57e428726e7cdf114d9011bd16066c080bc5f6ecb3f691d42c SHA512 51172365a186fbca09651bfd751284960dda4036390af2afab9812a7ae3fabdd9d60a336dee3cfc5e3d133a0216bf77e29660b9cdee2f0bcd2ce43c27297bdb1
diff --git a/dev-qt/qtwidgets/files/qtwidgets-5.15.8-QTBUG-104917.patch b/dev-qt/qtwidgets/files/qtwidgets-5.15.8-QTBUG-104917.patch
new file mode 100644
index 000000000000..fae665b14d2e
--- /dev/null
+++ b/dev-qt/qtwidgets/files/qtwidgets-5.15.8-QTBUG-104917.patch
@@ -0,0 +1,54 @@
+From 38c54b3ff58972fa16810740fc43933620b6dc0d Mon Sep 17 00:00:00 2001
+From: Axel Spoerl <axel.spoerl@qt.io>
+Date: Wed, 27 Jul 2022 15:17:03 +0200
+Subject: [PATCH] Add nullptr guard in
+ QStyleSheetStyle::drawPrimitive(PE_PanelLineEdit)
+
+Drawing PE_PanelLineEdit in QStyleSheetStyle with the default argument
+widget = nullptr causes a segfault.
+
+drawPrimitive tries to fall back to a container widget's render rule
+and therefore calls containerWidget() - which crashes when called with
+nullptr.
+
+Container widget fallback is pointless when drawPrimitive() is called
+with widget == nullptr. This patch skips it in that case.
+
+Fixes: QTBUG-104917
+Pick-to: 6.4 6.3 6.2
+Change-Id: I09e57dccfebb81a308944c233846d5b9ef58819e
+Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
+(cherry picked from commit effc8be3ce848770a093d51d5651908c375e83f8)
+---
+ src/widgets/styles/qstylesheetstyle.cpp | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/src/widgets/styles/qstylesheetstyle.cpp b/src/widgets/styles/qstylesheetstyle.cpp
+index 9fcb8ba522..50fdee0f69 100644
+--- a/src/widgets/styles/qstylesheetstyle.cpp
++++ b/src/widgets/styles/qstylesheetstyle.cpp
+@@ -4449,12 +4449,15 @@ void QStyleSheetStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *op
+
+ case PE_PanelLineEdit:
+ if (const QStyleOptionFrame *frm = qstyleoption_cast<const QStyleOptionFrame *>(opt)) {
+- QWidget *container = containerWidget(w);
+- if (container != w) {
+- QRenderRule containerRule = renderRule(container, opt);
+- if (!containerRule.hasNativeBorder() || !containerRule.baseStyleCanDraw())
+- return;
+- rule = containerRule;
++ // Fall back to container widget's render rule
++ if (w) {
++ QWidget *container = containerWidget(w);
++ if (container != w) {
++ QRenderRule containerRule = renderRule(container, opt);
++ if (!containerRule.hasNativeBorder() || !containerRule.baseStyleCanDraw())
++ return;
++ rule = containerRule;
++ }
+ }
+
+ if (rule.hasNativeBorder()) {
+--
+2.40.0
+
diff --git a/dev-qt/qtwidgets/qtwidgets-5.15.8-r4.ebuild b/dev-qt/qtwidgets/qtwidgets-5.15.8-r4.ebuild
new file mode 100644
index 000000000000..45c06643f187
--- /dev/null
+++ b/dev-qt/qtwidgets/qtwidgets-5.15.8-r4.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} != *9999* ]]; then
+ QT5_KDEPATCHSET_REV=5
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+QT5_MODULE="qtbase"
+inherit qt5-build
+
+DESCRIPTION="Set of components for creating classic desktop-style UIs for the Qt5 framework"
+
+# keep IUSE defaults in sync with qtgui
+IUSE="dbus gles2-only gtk +png +X"
+REQUIRED_USE="gtk? ( dbus )"
+
+DEPEND="
+ =dev-qt/qtcore-${QT5_PV}*:5=
+ =dev-qt/qtgui-${QT5_PV}*:5=[gles2-only=,png=,X?]
+ dbus? ( =dev-qt/qtdbus-${QT5_PV}* )
+ gtk? (
+ dev-libs/glib:2
+ =dev-qt/qtgui-${QT5_PV}*:5=[dbus]
+ x11-libs/gtk+:3
+ x11-libs/libX11
+ x11-libs/pango
+ )
+"
+RDEPEND="${DEPEND}"
+
+QT5_TARGET_SUBDIRS=(
+ src/tools/uic
+ src/widgets
+ src/plugins/platformthemes
+)
+
+QT5_GENTOO_CONFIG=(
+ dbus:xdgdesktopportal:
+ gtk:gtk3:
+ ::widgets
+ !:no-widgets:
+)
+
+QT5_GENTOO_PRIVATE_CONFIG=(
+ :widgets
+)
+
+PATCHES=(
+ "${FILESDIR}/${P}-QTBUG-106569.patch"
+ "${FILESDIR}/${P}-QTBUG-104917.patch" # KDE-bug 467373
+)
+
+src_configure() {
+ local myconf=(
+ -opengl $(usex gles2-only es2 desktop)
+ $(usev dbus -dbus-linked)
+ $(qt_use gtk)
+ -gui
+ $(qt_use png libpng system)
+ -widgets
+ $(qt_use X xcb)
+ $(usev X '-xcb-xlib -xkbcommon')
+ )
+ qt5-build_src_configure
+}