Fix crashers in g-s-d and control-center related to making subscription-manager a soft dep

This commit is contained in:
Ray Strode 2024-01-09 15:29:20 -05:00 committed by root
parent 8d991b8bd0
commit 20e4861498
3 changed files with 22 additions and 14 deletions

View File

@ -0,0 +1 @@
5c9249cc5e89627bd548d7cfc9f839c7524ad85f gnome-settings-daemon-40.0.1.tar.xz

View File

@ -11,7 +11,7 @@
Name: gnome-settings-daemon
Version: 40.0.1
Release: 14%{?dist}
Release: 15%{?dist}
Summary: The daemon sharing settings from GNOME to GTK+/KDE applications
License: GPLv2+
@ -197,6 +197,11 @@ cp %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas
%{_libdir}/pkgconfig/gnome-settings-daemon.pc
%changelog
* Tue Jan 09 2024 Ray Strode <rstrode@redhat.com> - 40.0.1-15
- Fix crashers in g-s-d and control-center related to
making subscription-manager a soft dep
Related: RHEL-20449
* Thu Jan 04 2024 Ray Strode <rstrode@redhat.com> - 40.0.1-14
- Make subman plugin sit dormant until subscription-manager is running
Related: RHEL-20449

View File

@ -3610,7 +3610,7 @@ index 2152c521..04b599a4 100644
2.43.0
From 5eeedbc5372816f1444903755892ced285b221a4 Mon Sep 17 00:00:00 2001
From 1ec8110778163b0b67cb300cc116b0b862492f21 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Thu, 4 Jan 2024 10:09:33 -0500
Subject: [PATCH 21/21] subman: Make subscription-manager a soft dependency
@ -3623,11 +3623,11 @@ normal operation.
This commit makes the subman plugin more forgiving of situations where
subscription-manager isn't installed.
---
plugins/subman/gsd-subscription-manager.c | 85 ++++++++++++++++++-----
1 file changed, 69 insertions(+), 16 deletions(-)
plugins/subman/gsd-subscription-manager.c | 86 ++++++++++++++++++-----
1 file changed, 70 insertions(+), 16 deletions(-)
diff --git a/plugins/subman/gsd-subscription-manager.c b/plugins/subman/gsd-subscription-manager.c
index dbb81098..2e893df5 100644
index dbb81098..e61d6c85 100644
--- a/plugins/subman/gsd-subscription-manager.c
+++ b/plugins/subman/gsd-subscription-manager.c
@@ -271,8 +271,9 @@ _client_subscription_status_update (GsdSubscriptionManager *manager, GError **er
@ -3642,15 +3642,6 @@ index dbb81098..2e893df5 100644
if (priv->installed_products->len == 0) {
priv->subscription_status = GSD_SUBMAN_SUBSCRIPTION_STATUS_NO_INSTALLED_PRODUCTS;
@@ -352,7 +353,7 @@ out:
g_variant_new_uint32 (priv->subscription_status));
}
- return TRUE;
+ return error == NULL;
}
static gboolean
@@ -939,10 +940,55 @@ _rhsm_interface_to_string (_RhsmInterface kind)
return NULL;
}
@ -3765,6 +3756,17 @@ index dbb81098..2e893df5 100644
}
void
@@ -1222,8 +1275,9 @@ handle_get_property (GDBusConnection *connection,
return NULL;
}
- if (g_strcmp0 (property_name, "SubscriptionStatus") == 0)
+ if (g_strcmp0 (property_name, "SubscriptionStatus") == 0) {
return g_variant_new_uint32 (priv->subscription_status);
+ }
if (g_strcmp0 (property_name, "InstalledProducts") == 0)
return _make_installed_products_variant (priv->installed_products);
--
2.43.0