diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2021-11-30 15:20:05 +0100 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2021-11-30 15:32:12 +0100 |
commit | c349ec643df4150b85aeb82e6c4c9dd1153cd15d (patch) | |
tree | 3cd569d0c9fc22b7871387e71a06bab9f0b50689 /kde-plasma/khotkeys | |
parent | kde-plasma/kgamma: drop 5.23.3* (diff) | |
download | gentoo-c349ec643df4150b85aeb82e6c4c9dd1153cd15d.tar.gz gentoo-c349ec643df4150b85aeb82e6c4c9dd1153cd15d.tar.bz2 gentoo-c349ec643df4150b85aeb82e6c4c9dd1153cd15d.zip |
kde-plasma/khotkeys: drop 5.23.3*
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-plasma/khotkeys')
-rw-r--r-- | kde-plasma/khotkeys/Manifest | 1 | ||||
-rw-r--r-- | kde-plasma/khotkeys/files/khotkeys-5.23.3-delete-widgets-w-entry.patch | 118 | ||||
-rw-r--r-- | kde-plasma/khotkeys/khotkeys-5.23.3-r1.ebuild | 52 |
3 files changed, 0 insertions, 171 deletions
diff --git a/kde-plasma/khotkeys/Manifest b/kde-plasma/khotkeys/Manifest index 355653668b2f..f3f16f68e171 100644 --- a/kde-plasma/khotkeys/Manifest +++ b/kde-plasma/khotkeys/Manifest @@ -1,3 +1,2 @@ DIST khotkeys-5.22.5.tar.xz 1859668 BLAKE2B a079df3082a6bc5147e8c3f9c63ebd155588c10bf752b27d22c3feac66aeb42229f194e47e33730643c10cc94132fb760061f6e5e6d035bd8c4f414951a63bb7 SHA512 de66cb92986c025ba0fd2b70eab65dcf25057e1a4afcd3616b7063047d0e41f2d80b780ab6a2d564e22be7bd4f9532e0c37c62c5e54bb6d9587ea95c363402d6 -DIST khotkeys-5.23.3.tar.xz 1851076 BLAKE2B 4434fb6b31397fa30cf716c97644e4a301b90b8841bfb02397514ceb8fc385050e2c1c92d03a8a5ced5534e9282cdf9bfa0279b69f9c76acdab0a63e95ceb94c SHA512 5ab9608714348e6db5c06b533881b74f07dc860a97c2088ce51037747021f6adb00c8b4cdad53f195ed0823a7bc81b78086ac02820ffa5f3a31a7163f0f38d33 DIST khotkeys-5.23.4.tar.xz 1851476 BLAKE2B 065fca99c6071a2537f1fc595063cbacfbbe5ade7d6db1a5c8f59f536e28d2311484d2e31bd7800c9ecb1fef41612fba84464c5bf21a9993f3bec52e7840b7f6 SHA512 34394d3d3c81b9018ddac2ceda5d354d82017d0ae6d6b56e19388a9dc698c1796a4490281008237584488522e153b1b33a5fe70cc4dc2423afdcc7d2e45c04a4 diff --git a/kde-plasma/khotkeys/files/khotkeys-5.23.3-delete-widgets-w-entry.patch b/kde-plasma/khotkeys/files/khotkeys-5.23.3-delete-widgets-w-entry.patch deleted file mode 100644 index 9e8ae22f2d53..000000000000 --- a/kde-plasma/khotkeys/files/khotkeys-5.23.3-delete-widgets-w-entry.patch +++ /dev/null @@ -1,118 +0,0 @@ -From a4137ac8f7b18824568fbee0f3e2dce7551841b7 Mon Sep 17 00:00:00 2001 -From: Harald Sitter <sitter@kde.org> -Date: Wed, 13 Oct 2021 13:52:15 +0200 -Subject: [PATCH] when deleting an entry, also delete the widgets - -previously what would happen is that KCMHotkeys::currentChanged would -run, find the new index (-1,-1) now invalid and show the global settings -instead. this however left the simple_action's underlying widgets still -sitting around referring to the previous index AND holding a dangling -trigger point that would eventually crash when the simple_action would -be poked by anything - -instead force unset the internal state of the simple_action when showing -the global settings. - -FIXED-IN: 5.23.5 -BUG: 443656 - - -(cherry picked from commit 97f9339fd96d97e012347f8f7fca987bbe4fca0d) ---- - kcm_hotkeys/kcm_hotkeys.cpp | 3 +++ - kcm_hotkeys/simple_action_data_widget.cpp | 18 +++++++++++------- - kcm_hotkeys/simple_action_data_widget.h | 3 +++ - kcm_hotkeys/triggers/trigger_widget_base.cpp | 8 ++++++++ - 4 files changed, 25 insertions(+), 7 deletions(-) - -diff --git a/kcm_hotkeys/kcm_hotkeys.cpp b/kcm_hotkeys/kcm_hotkeys.cpp -index d3ed315..4dc4664 100644 ---- a/kcm_hotkeys/kcm_hotkeys.cpp -+++ b/kcm_hotkeys/kcm_hotkeys.cpp -@@ -120,6 +120,9 @@ void KCMHotkeys::currentChanged(const QModelIndex &pCurrent, const QModelIndex & - } - - if (!current.isValid()) { -+ if (previous.isValid()) { // throw away old widget and stuff lest we have dangling pointers https://bugs.kde.org/show_bug.cgi?id=443656 -+ d->simple_action->unsetActionData(); -+ } - return showGlobalSettings(); - } - -diff --git a/kcm_hotkeys/simple_action_data_widget.cpp b/kcm_hotkeys/simple_action_data_widget.cpp -index e20ccaa..eb8c4c1 100644 ---- a/kcm_hotkeys/simple_action_data_widget.cpp -+++ b/kcm_hotkeys/simple_action_data_widget.cpp -@@ -60,14 +60,22 @@ void SimpleActionDataWidget::doCopyToObject() - } - } - --void SimpleActionDataWidget::setActionData(KHotKeys::SimpleActionData *pData) -+void SimpleActionDataWidget::unsetActionData() - { -- _data = pData; -+ _data = nullptr; - -- // Now go and work on the trigger - delete currentTrigger; - currentTrigger = nullptr; - -+ delete currentAction; -+ currentAction = nullptr; -+} -+ -+void SimpleActionDataWidget::setActionData(KHotKeys::SimpleActionData *pData) -+{ -+ unsetActionData(); -+ _data = pData; -+ - if (KHotKeys::Trigger *trg = data()->trigger()) { - switch (trg->type()) { - case KHotKeys::Trigger::ShortcutTriggerType: -@@ -95,10 +103,6 @@ void SimpleActionDataWidget::setActionData(KHotKeys::SimpleActionData *pData) - extend(currentTrigger, i18n("Trigger")); - } - -- // Now go and work on the action -- delete currentAction; -- currentAction = nullptr; -- - if (KHotKeys::Action *act = data()->action()) { - switch (act->type()) { - case KHotKeys::Action::MenuEntryActionType: -diff --git a/kcm_hotkeys/simple_action_data_widget.h b/kcm_hotkeys/simple_action_data_widget.h -index bc203b1..7c347c5 100644 ---- a/kcm_hotkeys/simple_action_data_widget.h -+++ b/kcm_hotkeys/simple_action_data_widget.h -@@ -32,6 +32,9 @@ public: - */ - void setActionData(KHotKeys::SimpleActionData *action); - -+ /// Throws away the held widgets and state. -+ void unsetActionData(); -+ - KHotKeys::SimpleActionData *data() - { - return static_cast<KHotKeys::SimpleActionData *>(_data); -diff --git a/kcm_hotkeys/triggers/trigger_widget_base.cpp b/kcm_hotkeys/triggers/trigger_widget_base.cpp -index 67f4f3e..3bfa39b 100644 ---- a/kcm_hotkeys/triggers/trigger_widget_base.cpp -+++ b/kcm_hotkeys/triggers/trigger_widget_base.cpp -@@ -10,6 +10,14 @@ TriggerWidgetBase::TriggerWidgetBase(KHotKeys::Trigger *trigger, QWidget *parent - : HotkeysWidgetIFace(parent) - , _trigger(trigger) - { -+ // Safety net to catch use-after-free. The triggers are not held or managed by us nor our parent. -+ // Makes them easier to spot, unlike https://bugs.kde.org/show_bug.cgi?id=443656 -+ auto qObject = dynamic_cast<QObject *>(trigger); -+ if (qObject) { -+ connect(qObject, &QObject::destroyed, this, [this] { -+ _trigger = nullptr; -+ }); -+ } - } - - TriggerWidgetBase::~TriggerWidgetBase() --- -GitLab - diff --git a/kde-plasma/khotkeys/khotkeys-5.23.3-r1.ebuild b/kde-plasma/khotkeys/khotkeys-5.23.3-r1.ebuild deleted file mode 100644 index 19b406f848a4..000000000000 --- a/kde-plasma/khotkeys/khotkeys-5.23.3-r1.ebuild +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -ECM_HANDBOOK="forceoptional" # not optional until !kdelibs4support -KFMIN=5.86.0 -PVCUT=$(ver_cut 1-3) -QTMIN=5.15.2 -inherit ecm kde.org - -DESCRIPTION="KDE Plasma workspace hotkey module" - -LICENSE="GPL-2" # TODO: CHECK -SLOT="5" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" -IUSE="" - -COMMON_DEPEND=" - >=dev-qt/qtdbus-${QTMIN}:5 - >=dev-qt/qtgui-${QTMIN}:5 - >=dev-qt/qtwidgets-${QTMIN}:5 - >=dev-qt/qtx11extras-${QTMIN}:5 - >=kde-frameworks/kcompletion-${KFMIN}:5 - >=kde-frameworks/kconfig-${KFMIN}:5 - >=kde-frameworks/kconfigwidgets-${KFMIN}:5 - >=kde-frameworks/kcoreaddons-${KFMIN}:5 - >=kde-frameworks/kdbusaddons-${KFMIN}:5 - >=kde-frameworks/kdelibs4support-${KFMIN}:5[X] - >=kde-frameworks/kglobalaccel-${KFMIN}:5 - >=kde-frameworks/ki18n-${KFMIN}:5 - >=kde-frameworks/kio-${KFMIN}:5 - >=kde-frameworks/kservice-${KFMIN}:5 - >=kde-frameworks/ktextwidgets-${KFMIN}:5 - >=kde-frameworks/kwidgetsaddons-${KFMIN}:5 - >=kde-frameworks/kwindowsystem-${KFMIN}:5 - >=kde-frameworks/kxmlgui-${KFMIN}:5 - >=kde-plasma/libkworkspace-${PVCUT}:5 - x11-libs/libX11 - x11-libs/libXtst -" -DEPEND="${COMMON_DEPEND} - x11-base/xorg-proto - x11-libs/libxcb - x11-libs/libXtst -" -RDEPEND="${COMMON_DEPEND} - >=kde-frameworks/kded-${KFMIN}:5 - >=kde-plasma/kde-cli-tools-${PVCUT}:5 -" - -PATCHES=( "${FILESDIR}"/${P}-delete-widgets-w-entry.patch ) # KDE-bug 443656 |