From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/solid/, kde-frameworks/solid/files/
Date: Sat, 14 Dec 2024 22:37:28 +0000 (UTC) [thread overview]
Message-ID: <1734215809.e22889b93a3eacdce57bdb30cc0204164f705071.asturm@gentoo> (raw)
commit: e22889b93a3eacdce57bdb30cc0204164f705071
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 14 22:35:15 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Dec 14 22:36:49 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e22889b9
kde-frameworks/solid: Add null check for StorageAccess interface
... in storageAccessFromPath
KDE-bug: https://bugs.kde.org/show_bug.cgi?id=497299
KDE-bug: https://bugs.kde.org/show_bug.cgi?id=492578
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../solid/files/solid-6.7.0-crashfix.patch | 68 ++++++++++++++++++++++
kde-frameworks/solid/solid-6.7.0-r2.ebuild | 53 +++++++++++++++++
kde-frameworks/solid/solid-6.8.0-r1.ebuild | 50 ++++++++++++++++
3 files changed, 171 insertions(+)
diff --git a/kde-frameworks/solid/files/solid-6.7.0-crashfix.patch b/kde-frameworks/solid/files/solid-6.7.0-crashfix.patch
new file mode 100644
index 000000000000..3f4ad2c9377b
--- /dev/null
+++ b/kde-frameworks/solid/files/solid-6.7.0-crashfix.patch
@@ -0,0 +1,68 @@
+From 11a21dfad782c3862f6a3fba9bcf4fd5c5005777 Mon Sep 17 00:00:00 2001
+From: Nicolas Fella <nicolas.fella@gmx.de>
+Date: Wed, 11 Dec 2024 22:58:47 +0100
+Subject: [PATCH] Add null check for StorageAccess interface in
+ storageAccessFromPath
+
+In slotInterfacesRemoved we do a remove+add cycle
+
+During that cycle the backend object is null, so querying the StorageAccess
+interface will return null.
+
+This means that when something calls storageAccessFromPath in reaction to
+the removed signal we will get a null StorageAccess.
+
+The overall design is a bit shaky here, but we can handle it more gracefully
+by checking the result for null
+
+BUG: 497299
+
+CCBUG: 492578
+
+SENTRY: PLASMA-WORKSPACE-11Q1
+
+SENTRY: KDECONNECT-KDE-BK
+
+SENTRY: DOLPHIN-320
+
+SENTRY: KDED-7M
+
+SENTRY: FALLTHROUGH-62S
+
+SENTRY: KATE-Y3
+
+SENTRY: KDENLIVE-VR
+
+SENTRY: XDG-DESKTOP-PORTAL-KDE-3R
+
+SENTRY: KDEVELOP-93
+
+SENTRY: KRUNNER-GD
+
+SENTRY: PLASMA-WORKSPACE-1986
+
+SENTRY: ELISA-9H
+(cherry picked from commit 2f8825b489ecc69bed67a49abdcb643d1fa42b4a)
+---
+ src/solid/devices/frontend/devicemanager.cpp | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/solid/devices/frontend/devicemanager.cpp b/src/solid/devices/frontend/devicemanager.cpp
+index 896a1826..9559592a 100644
+--- a/src/solid/devices/frontend/devicemanager.cpp
++++ b/src/solid/devices/frontend/devicemanager.cpp
+@@ -161,6 +161,11 @@ Solid::Device Solid::Device::storageAccessFromPath(const QString &path)
+ }
+
+ auto storageAccess = device.as<StorageAccess>();
++
++ if (!storageAccess) {
++ continue;
++ }
++
+ QString mountPath = storageAccess->filePath();
+
+ if (mountPath.size() <= match_length || !path.startsWith(mountPath)) {
+--
+GitLab
+
diff --git a/kde-frameworks/solid/solid-6.7.0-r2.ebuild b/kde-frameworks/solid/solid-6.7.0-r2.ebuild
new file mode 100644
index 000000000000..b0d4d513d64e
--- /dev/null
+++ b/kde-frameworks/solid/solid-6.7.0-r2.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+QTMIN=6.6.2
+inherit ecm frameworks.kde.org optfeature
+
+DESCRIPTION="Provider for platform independent hardware discovery, abstraction and management"
+
+LICENSE="LGPL-2.1+"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="ios"
+
+RDEPEND="
+ >=dev-qt/qtbase-${QTMIN}:6[dbus,gui,xml]
+ >=dev-qt/qtdeclarative-${QTMIN}:6
+ sys-apps/util-linux
+ sys-fs/udisks:2
+ virtual/libudev:=
+ ios? (
+ app-pda/libimobiledevice:=
+ app-pda/libplist:=
+ )
+"
+DEPEND="${RDEPEND}
+ test? ( >=dev-qt/qtbase-${QTMIN}:6[concurrent] )
+"
+BDEPEND="
+ app-alternatives/lex
+ app-alternatives/yacc
+ >=dev-qt/qttools-${QTMIN}:6[linguist]
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-fix-crash-on-eject.patch" # KDE-bug 464149
+ "${FILESDIR}/${P}-crashfix.patch" # KDE-bugs 497299, 492578
+)
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake_use_find_package ios IMobileDevice)
+ $(cmake_use_find_package ios PList)
+ )
+ ecm_src_configure
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ optfeature "media player devices support" app-misc/media-player-info
+ fi
+ ecm_pkg_postinst
+}
diff --git a/kde-frameworks/solid/solid-6.8.0-r1.ebuild b/kde-frameworks/solid/solid-6.8.0-r1.ebuild
new file mode 100644
index 000000000000..78ea44f3b1dd
--- /dev/null
+++ b/kde-frameworks/solid/solid-6.8.0-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+QTMIN=6.7.2
+inherit ecm frameworks.kde.org optfeature
+
+DESCRIPTION="Provider for platform independent hardware discovery, abstraction and management"
+
+LICENSE="LGPL-2.1+"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="ios"
+
+RDEPEND="
+ >=dev-qt/qtbase-${QTMIN}:6[dbus,gui,xml]
+ >=dev-qt/qtdeclarative-${QTMIN}:6
+ sys-apps/util-linux
+ sys-fs/udisks:2
+ virtual/libudev:=
+ ios? (
+ app-pda/libimobiledevice:=
+ app-pda/libplist:=
+ )
+"
+DEPEND="${RDEPEND}
+ test? ( >=dev-qt/qtbase-${QTMIN}:6[concurrent] )
+"
+BDEPEND="
+ app-alternatives/lex
+ app-alternatives/yacc
+ >=dev-qt/qttools-${QTMIN}:6[linguist]
+"
+
+PATCHES=( "${FILESDIR}/${PN}-6.7.0-crashfix.patch" ) # KDE-bugs 497299, 492578
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake_use_find_package ios IMobileDevice)
+ $(cmake_use_find_package ios PList)
+ )
+ ecm_src_configure
+}
+
+pkg_postinst() {
+ if [[ -z "${REPLACING_VERSIONS}" ]]; then
+ optfeature "media player devices support" app-misc/media-player-info
+ fi
+ ecm_pkg_postinst
+}
next reply other threads:[~2024-12-14 22:37 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-14 22:37 Andreas Sturmlechner [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-11-15 13:46 [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/solid/, kde-frameworks/solid/files/ Andreas Sturmlechner
2024-11-05 22:50 Andreas Sturmlechner
2022-01-20 13:26 Andreas Sturmlechner
2021-08-01 19:32 Andreas Sturmlechner
2018-05-18 21:15 Andreas Sturmlechner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1734215809.e22889b93a3eacdce57bdb30cc0204164f705071.asturm@gentoo \
--to=asturm@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox