From 86b8d289717bad2800342efca0a5023aa8374e9c Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 21 Nov 2013 20:05:49 +0100 Subject: [PATCH] logind,machined,run: properly invoke StartTransientUnit() bus call --- src/libsystemd-bus/bus-objects.c | 13 +++++-------- src/login/logind-dbus.c | 4 ++++ src/machine/machined-dbus.c | 4 ++++ 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 8413023d6..06be5ed7d 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 b1c2ef19b..a52b00181 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 eda582ae8..34cd61d66 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 539db6f49..2e0cd1a6d 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); } -- 2.30.2