summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2022-11-27 12:12:53 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2022-11-27 12:20:21 +0100
commit216e568fe5d641218d6319988fceb1dd4ef4c42e (patch)
tree8a5228695bc2acf22c25d919a38a3cbe1e89f06e /kde-frameworks/kjobwidgets
parentkde-frameworks/kimageformats: drop 5.96.0 (diff)
downloadgentoo-216e568fe5d641218d6319988fceb1dd4ef4c42e.tar.gz
gentoo-216e568fe5d641218d6319988fceb1dd4ef4c42e.tar.bz2
gentoo-216e568fe5d641218d6319988fceb1dd4ef4c42e.zip
kde-frameworks/kjobwidgets: drop 5.96.0-r1
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'kde-frameworks/kjobwidgets')
-rw-r--r--kde-frameworks/kjobwidgets/Manifest1
-rw-r--r--kde-frameworks/kjobwidgets/files/kjobwidgets-5.96.0-fix-ui-server-crash.patch82
-rw-r--r--kde-frameworks/kjobwidgets/kjobwidgets-5.96.0-r1.ebuild42
3 files changed, 0 insertions, 125 deletions
diff --git a/kde-frameworks/kjobwidgets/Manifest b/kde-frameworks/kjobwidgets/Manifest
index 31841d11ae9a..9ad6f8d680e2 100644
--- a/kde-frameworks/kjobwidgets/Manifest
+++ b/kde-frameworks/kjobwidgets/Manifest
@@ -1,3 +1,2 @@
DIST kjobwidgets-5.100.0.tar.xz 2329668 BLAKE2B a46df80fff8c5fb1de9dadd8c6acfa4199558db50661ab7a089e16d114233fd481a766943febe0251a59d97d638c86935635ac96f3c5736824fde6c094e0ae0c SHA512 0f1e96ee2a38f366ac583d7bb7426d409d11d428ba473ae3706e6c8baddcc8e1f8b3f90da05083622f2c23cc3d02f0c707e26e9edfafc6f1a2d655a4eb13369a
-DIST kjobwidgets-5.96.0.tar.xz 101704 BLAKE2B 98f647b2bc7266364c05f5e57ddefbb60b8a16260f83abac4b33d7819987b2083029c14d78e49f6cd1fd5e087a343b11893e30d45c496e345fe98d67465055b5 SHA512 17fb818efa4f241a3e8248b81ba16c3a879b0580eb3a33efc19983faa5b39959e0cb1032b9044e953accd13ad93c028bfc619c49b26076416f707e6ea9480510
DIST kjobwidgets-5.99.0.tar.xz 101840 BLAKE2B f6eea6fc2be7f989ae0fcc8573fbc1a7df68fb872050d99d3a41dd1be6443d1cd5c582ec8a38f5b12519c75b562ec17f4dc9c49b26ee18c97d01ea1f5fbd21db SHA512 b59fdf92bbe3d6591b4f896d08a367e01f863b317e6a9545a79a6622bf2d3833af6c2351437cdffcc276202922c4efbac92256389521a134397e88915ddc4160
diff --git a/kde-frameworks/kjobwidgets/files/kjobwidgets-5.96.0-fix-ui-server-crash.patch b/kde-frameworks/kjobwidgets/files/kjobwidgets-5.96.0-fix-ui-server-crash.patch
deleted file mode 100644
index 463daf84f573..000000000000
--- a/kde-frameworks/kjobwidgets/files/kjobwidgets-5.96.0-fix-ui-server-crash.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 5aeba3f01ef8cdf723813cacdd29945328288663 Mon Sep 17 00:00:00 2001
-From: Michael Pyne <mpyne@kde.org>
-Date: Sat, 2 Jul 2022 17:57:10 -0400
-Subject: [PATCH] ui-server: Fix crash by only re-registering live KJobs.
-
-This addresses a frequently-reported crash in the job tracker for
-KUiServerV2 that occurs when attempting to re-register new job views for
-active KJobs after a new UI server comes online.
-
-Although I have not been able to reproduce the crash myself, (by
-attempting to use both long-lived and short-lived file transfers from
-Dolphin and restarting plasmashell), inspection of the code shows that
-it is possible for there to be deleted KJobs pointing to JobView objects
-during some portions of the job tracker's lifetime.
-
-The current code deals with this in situations including DBus calls to
-create a U/I view for a KJob (the KJob may terminate before the DBus
-reply is received) and even a short delay that can be optionally
-introduced (the KJob may terminate before the delay elapses). A
-QPointer<KJob> is used as a guard in these situations, but there is no
-similar guard for the re-registration code.
-
-In this case we cannot use QPointer<KJob> to guard the job's lifetime
-because the KJob must be alive when the QPointer<KJob> is created, and
-this crash occurs when the KJob is terminated. However the KJob's
-destruction should lead to the unregisterJob() function being called,
-which handles removing the terminated KJob from the map of job views
-with only one exception, where instead the job view for the KJob has its
-"terminated" pending status set.
-
-So the fix here checks for the "terminated" state in the same way as
-performed in requestView(), and if the KJob is terminated, handles
-requesting the job view to terminate the U/I and finally removing the
-terminated KJob from the map of job views.
-
-By doing this, we avoid passing a deleted KJob to the registerJob()
-function, which will attempt to dereference it and crash the
-application.
-
-See also merge request !22
-
-BUG:450325
----
- src/kuiserverv2jobtracker.cpp | 20 ++++++++++++++++----
- 1 file changed, 16 insertions(+), 4 deletions(-)
-
-diff --git a/src/kuiserverv2jobtracker.cpp b/src/kuiserverv2jobtracker.cpp
-index 737c880..3592618 100644
---- a/src/kuiserverv2jobtracker.cpp
-+++ b/src/kuiserverv2jobtracker.cpp
-@@ -209,12 +209,24 @@ void KUiServerV2JobTracker::registerJob(KJob *job)
-
- const auto oldState = view.currentState;
-
-- delete view.jobView;
-- d->jobViews.remove(job);
-+ // It is possible that the KJob has been deleted already so do not
-+ // use or deference if marked as terminated
-+ if (oldState.value(QStringLiteral("terminated")).toBool()) {
-+ const uint errorCode = oldState.value(QStringLiteral("errorCode")).toUInt();
-+ const QString errorMessage = oldState.value(QStringLiteral("errorMessage")).toString();
-
-- registerJob(job);
-+ view.jobView->terminate(errorCode, errorMessage, QVariantMap() /*hints*/);
-
-- d->jobViews[job].currentState = oldState;
-+ delete view.jobView;
-+ d->jobViews.remove(job);
-+ } else {
-+ delete view.jobView;
-+ d->jobViews.remove(job); // must happen before registerJob
-+
-+ registerJob(job);
-+
-+ d->jobViews[job].currentState = oldState;
-+ }
- }
- });
- }
---
-GitLab
-
diff --git a/kde-frameworks/kjobwidgets/kjobwidgets-5.96.0-r1.ebuild b/kde-frameworks/kjobwidgets/kjobwidgets-5.96.0-r1.ebuild
deleted file mode 100644
index dac768b0689e..000000000000
--- a/kde-frameworks/kjobwidgets/kjobwidgets-5.96.0-r1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PVCUT=$(ver_cut 1-2)
-QTMIN=5.15.4
-inherit ecm frameworks.kde.org
-
-DESCRIPTION="Framework providing assorted widgets for showing the progress of jobs"
-
-LICENSE="LGPL-2+"
-KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86"
-IUSE="nls X"
-
-RDEPEND="
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtwidgets-${QTMIN}:5
- =kde-frameworks/kcoreaddons-${PVCUT}*:5
- =kde-frameworks/kwidgetsaddons-${PVCUT}*:5
- X? ( >=dev-qt/qtx11extras-${QTMIN}:5 )
-"
-DEPEND="${RDEPEND}
- X? (
- x11-base/xorg-proto
- x11-libs/libX11
- )
-"
-BDEPEND="
- nls? ( >=dev-qt/linguist-tools-${QTMIN}:5 )
-"
-
-PATCHES=( "${FILESDIR}/${P}-fix-ui-server-crash.patch" ) # KDE-bug 450325
-
-src_configure() {
- local mycmakeargs=(
- $(cmake_use_find_package X X11)
- )
-
- ecm_src_configure
-}