chiark / gitweb /
Revert "bus: driverd: don't attempt to remove from empty list"
[elogind.git] / src / bus-driverd / bus-driverd.c
index d6dec5dc2a7e85c5f4943ffcb03a3a36fd8875d9..44172c4ed6a211c38eab21a7b32ed281151b0227 100644 (file)
@@ -346,7 +346,7 @@ static int driver_remove_match(sd_bus *bus, sd_bus_message *message, void *userd
 
         m = hashmap_get(c->matches, normalized);
         if (!m) {
-                r = sd_bus_error_setf(error, SD_BUS_ERROR_MATCH_RULE_NOT_FOUND, "Match rule \"%s\" not found.");
+                r = sd_bus_error_setf(error, SD_BUS_ERROR_MATCH_RULE_NOT_FOUND, "Match rule \"%s\" not found.", normalized);
                 goto finish;
         }
 
@@ -695,7 +695,7 @@ static int driver_start_service_by_name(sd_bus *bus, sd_bus_message *m, void *us
                 return r;
 
         if (!t || !t[0] || t[1])
-                return -EIO;
+                return sd_bus_error_setf(error, SD_BUS_ERROR_SERVICE_UNKNOWN, "Bus name %s not found.", name);
 
         r = sd_bus_call_method(
                         bus,
@@ -767,7 +767,7 @@ static int connect_bus(Context *c) {
 
         r = sd_bus_request_name(c->bus, "org.freedesktop.DBus", 0);
         if (r < 0) {
-                log_error("Unable to request name: %s\n", strerror(-r));
+                log_error("Unable to request name: %s", strerror(-r));
                 return r;
         }