summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/dbus.c9
-rw-r--r--src/core/manager.c11
2 files changed, 16 insertions, 4 deletions
diff --git a/src/core/dbus.c b/src/core/dbus.c
index 79cf414eee..87da9335a8 100644
--- a/src/core/dbus.c
+++ b/src/core/dbus.c
@@ -1144,15 +1144,20 @@ void bus_track_serialize(sd_bus_track *t, FILE *f) {
int bus_track_deserialize_item(char ***l, const char *line) {
const char *e;
+ int r;
assert(l);
assert(line);
e = startswith(line, "subscribed=");
if (!e)
- return -EINVAL;
+ return 0;
+
+ r = strv_extend(l, e);
+ if (r < 0)
+ return r;
- return strv_extend(l, e);
+ return 1;
}
int bus_track_coldplug(Manager *m, sd_bus_track **t, char ***l) {
diff --git a/src/core/manager.c b/src/core/manager.c
index 7b2550065d..5fbb375cd4 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -2394,8 +2394,15 @@ int manager_deserialize(Manager *m, FILE *f, FDSet *fds) {
m->kdbus_fd = fdset_remove(fds, fd);
}
- } else if (bus_track_deserialize_item(&m->deserialized_subscribed, l) < 0)
- log_warning("Unknown serialization item '%s'", l);
+ } else {
+ int k;
+
+ k = bus_track_deserialize_item(&m->deserialized_subscribed, l);
+ if (k < 0)
+ log_debug_errno(k, "Failed to deserialize bus tracker object: %m");
+ else if (k == 0)
+ log_debug("Unknown serialization item '%s'", l);
+ }
}
for (;;) {