984f77
From 805e13f7016f37c882069f43b5f0c0972d5fdf95 Mon Sep 17 00:00:00 2001
984f77
From: Yu Watanabe <watanabe.yu+github@gmail.com>
984f77
Date: Sun, 17 Apr 2022 07:29:24 +0900
984f77
Subject: [PATCH] sd-bus: do not return negative errno when unknown name is
984f77
 specified
984f77
984f77
When 'recursive' is false, then sd_bus_track_remove_name() does not
984f77
return negative errno when unknown name is specified. Let's follow the
984f77
same pattern for the case that 'recursive' is true.
984f77
984f77
(cherry picked from commit 55bfacc6c33eaf3475762e71172b2ef504be5af8)
984f77
984f77
Related: #2047373
984f77
---
984f77
 src/libsystemd/sd-bus/bus-track.c | 5 +----
984f77
 1 file changed, 1 insertion(+), 4 deletions(-)
984f77
984f77
diff --git a/src/libsystemd/sd-bus/bus-track.c b/src/libsystemd/sd-bus/bus-track.c
984f77
index b9965d9d64..8893f190a1 100644
984f77
--- a/src/libsystemd/sd-bus/bus-track.c
984f77
+++ b/src/libsystemd/sd-bus/bus-track.c
984f77
@@ -275,12 +275,9 @@ _public_ int sd_bus_track_remove_name(sd_bus_track *track, const char *name) {
984f77
         if (!track) /* Treat a NULL track object as an empty track object */
984f77
                 return 0;
984f77
 
984f77
-        if (!track->recursive)
984f77
-                return bus_track_remove_name_fully(track, name);
984f77
-
984f77
         i = hashmap_get(track->names, name);
984f77
         if (!i)
984f77
-                return -EUNATCH;
984f77
+                return 0;
984f77
 
984f77
         assert(i->n_ref >=1);
984f77
         if (i->n_ref <= 1)