summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kde-plasma/libksysguard/files/libksysguard-5.21.0-fix-non-systemd-crash.patch96
1 files changed, 0 insertions, 96 deletions
diff --git a/kde-plasma/libksysguard/files/libksysguard-5.21.0-fix-non-systemd-crash.patch b/kde-plasma/libksysguard/files/libksysguard-5.21.0-fix-non-systemd-crash.patch
deleted file mode 100644
index ec7c57e133a3..000000000000
--- a/kde-plasma/libksysguard/files/libksysguard-5.21.0-fix-non-systemd-crash.patch
+++ /dev/null
@@ -1,96 +0,0 @@
-From 76a3570ab2f9fab98aa6ccc9ceafbbc29323db06 Mon Sep 17 00:00:00 2001
-From: David Edmundson <kde@davidedmundson.co.uk>
-Date: Thu, 4 Feb 2021 10:47:43 +0000
-Subject: [PATCH] Add method CGroupDataModel::isAvailable
-
-This returns true if the root is pointing to a valid path. The idea
-being that non-systemd systems won't have applications scoped correctly,
-nor a relevant user slice.
-
-By communicating this we can dislpay the entry as not working in the UI.
-
-
-(cherry picked from commit 6d42960456f145d178579a1debb726bd0c7dcee6)
----
- processcore/cgroup_data_model.cpp | 21 ++++++++++++++++++++-
- processcore/cgroup_data_model.h | 5 +++++
- 2 files changed, 25 insertions(+), 1 deletion(-)
-
-diff --git a/processcore/cgroup_data_model.cpp b/processcore/cgroup_data_model.cpp
-index 46a36c3..4278a2c 100644
---- a/processcore/cgroup_data_model.cpp
-+++ b/processcore/cgroup_data_model.cpp
-@@ -48,6 +48,7 @@ public:
- QHash<QString, KSysGuard::ProcessAttribute* > m_availableAttributes;
- QVector<KSysGuard::ProcessAttribute* > m_enabledAttributes;
-
-+ bool m_available = false;
- QString m_root;
- QScopedPointer<CGroup> m_rootGroup;
-
-@@ -367,9 +368,22 @@ void CGroupDataModel::setRoot(const QString &root)
- return;
- }
- d->m_root = root;
-- d->m_rootGroup.reset(new CGroup(root));
- emit rootChanged();
- QMetaObject::invokeMethod(this, [this] {update();}, Qt::QueuedConnection);
-+
-+ const QString path = CGroup::cgroupSysBasePath() + root;
-+ bool available = QFile::exists(path);
-+
-+ if (available) {
-+ d->m_rootGroup.reset(new CGroup(root));
-+ } else {
-+ d->m_rootGroup.reset();
-+ }
-+
-+ if (available != d->m_available) {
-+ d->m_available = available;
-+ emit availableChanged();
-+ }
- }
-
- void CGroupDataModel::update()
-@@ -443,6 +457,11 @@ void CGroupDataModel::update(CGroup *node)
- }
- }
-
-+bool CGroupDataModel::isAvailable() const
-+{
-+ return d->m_available;
-+}
-+
- QVector<Process*> CGroupDataModelPrivate::processesFor(CGroup *app)
- {
- if (m_processMap.contains(app)) {
-diff --git a/processcore/cgroup_data_model.h b/processcore/cgroup_data_model.h
-index 5ce58aa..1f7d28d 100644
---- a/processcore/cgroup_data_model.h
-+++ b/processcore/cgroup_data_model.h
-@@ -59,6 +59,8 @@ class Q_DECL_EXPORT CGroupDataModel : public QAbstractItemModel
- */
- Q_PROPERTY(QString setRoot READ root WRITE setRoot NOTIFY rootChanged)
-
-+ Q_PROPERTY(bool available READ isAvailable NOTIFY availableChanged)
-+
- public:
- CGroupDataModel(QObject *parent = nullptr);
- CGroupDataModel(const QString &root, QObject *parent = nullptr);
-@@ -114,10 +116,13 @@ public:
- */
- void update();
-
-+ bool isAvailable() const;
-+
- Q_SIGNALS:
- void enabledAttributesChanged();
- void enabledChanged();
- void rootChanged();
-+ void availableChanged();
-
- protected:
- virtual bool filterAcceptsCGroup(const QString &id);
---
-GitLab
-