systemctl: replace manual GetAll call with bus_map_all_properties() in unit_exists()

This commit is contained in:
Reverend Homer
2018-01-22 20:33:15 +01:00
committed by Lennart Poettering
parent bf70ff2cff
commit 98f6093687
+1 -13
View File
@@ -6270,22 +6270,10 @@ static int unit_exists(LookupPaths *lp, const char *unit) {
if (r < 0)
return r;
r = sd_bus_call_method(
bus,
"org.freedesktop.systemd1",
path,
"org.freedesktop.DBus.Properties",
"GetAll",
&error,
&reply,
"s", "");
r = bus_map_all_properties(bus, "org.freedesktop.systemd1", path, property_map, &error, &info);
if (r < 0)
return log_error_errno(r, "Failed to get properties: %s", bus_error_message(&error, r));
r = bus_message_map_all_properties(reply, property_map, &error, &info);
if (r < 0)
return log_error_errno(r, "Failed to map properties: %s", bus_error_message(&error, r));
return !streq_ptr(info.load_state, "not-found") || !streq_ptr(info.active_state, "inactive");
}