diff options
author | Lennart Poettering <lennart@poettering.net> | 2013-11-21 20:05:49 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2013-11-21 21:12:36 +0100 |
commit | 86b8d289717bad2800342efca0a5023aa8374e9c (patch) | |
tree | 60a5bea89f3e22c066485fdb53aac664fa39d2b0 | |
parent | ebcf1f97de4f6b1580ae55eb56b1a3939fe6b602 (diff) |
logind,machined,run: properly invoke StartTransientUnit() bus call
-rw-r--r-- | src/libsystemd-bus/bus-objects.c | 13 | ||||
-rw-r--r-- | src/login/logind-dbus.c | 4 | ||||
-rw-r--r-- | src/machine/machined-dbus.c | 4 | ||||
-rw-r--r-- | src/run/run.c | 4 |
4 files changed, 17 insertions, 8 deletions
diff --git a/src/libsystemd-bus/bus-objects.c b/src/libsystemd-bus/bus-objects.c index 8413023d6f..06be5ed7d8 100644 --- a/src/libsystemd-bus/bus-objects.c +++ b/src/libsystemd-bus/bus-objects.c @@ -292,14 +292,11 @@ static int method_callbacks_run( return -EINVAL; if (!streq(strempty(c->vtable->x.method.signature), signature)) { - r = sd_bus_reply_method_errorf(m, - SD_BUS_ERROR_INVALID_ARGS, - "Invalid arguments '%s' to call %s:%s, expecting '%s'.", - signature, c->interface, c->member, strempty(c->vtable->x.method.signature)); - if (r < 0) - return r; - - return 1; + return sd_bus_reply_method_errorf( + m, + SD_BUS_ERROR_INVALID_ARGS, + "Invalid arguments '%s' to call %s.%s(), expecting '%s'.", + signature, c->interface, c->member, strempty(c->vtable->x.method.signature)); } if (c->vtable->x.method.handler) { diff --git a/src/login/logind-dbus.c b/src/login/logind-dbus.c index b1c2ef19b1..a52b00181d 100644 --- a/src/login/logind-dbus.c +++ b/src/login/logind-dbus.c @@ -2216,6 +2216,10 @@ int manager_start_scope( if (r < 0) return r; + r = sd_bus_message_append(m, "a(sa(sv))", 0); + if (r < 0) + return r; + r = sd_bus_call(manager->bus, m, 0, error, &reply); if (r < 0) return r; diff --git a/src/machine/machined-dbus.c b/src/machine/machined-dbus.c index eda582ae83..34cd61d667 100644 --- a/src/machine/machined-dbus.c +++ b/src/machine/machined-dbus.c @@ -527,6 +527,10 @@ int manager_start_scope( if (r < 0) return r; + r = sd_bus_message_append(m, "a(sa(sv))", 0); + if (r < 0) + return r; + r = sd_bus_call(manager->bus, m, 0, error, &reply); if (r < 0) return r; diff --git a/src/run/run.c b/src/run/run.c index 539db6f494..2e0cd1a6d2 100644 --- a/src/run/run.c +++ b/src/run/run.c @@ -237,6 +237,10 @@ static int message_start_transient_unit_send(sd_bus *bus, sd_bus_message *m, sd_ if (r < 0) return r; + r = sd_bus_message_append(m, "a(sa(sv))", 0); + if (r < 0) + return r; + return sd_bus_call(bus, m, 0, error, reply); } |