X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Frun%2Frun.c;h=1b14e40e4d2e7ed6dd38f545ed19042150e34df6;hb=e44127018aaae2126734aca65a3e46dc14bf1825;hp=1eeb5c6e56334d2d416e065af2892362d70f8407;hpb=8159d91a9c92aaee66d450ab0daff88f6e1a42b3;p=elogind.git diff --git a/src/run/run.c b/src/run/run.c index 1eeb5c6e5..1b14e40e4 100644 --- a/src/run/run.c +++ b/src/run/run.c @@ -208,7 +208,7 @@ static int message_start_transient_unit_new(sd_bus *bus, const char *name, sd_bu if (!isempty(arg_slice)) { _cleanup_free_ char *slice; - slice = unit_name_mangle_with_suffix(arg_slice, ".slice"); + slice = unit_name_mangle_with_suffix(arg_slice, MANGLE_NOGLOB, ".slice"); if (!slice) return -ENOMEM; @@ -237,7 +237,11 @@ static int message_start_transient_unit_send(sd_bus *bus, sd_bus_message *m, sd_ if (r < 0) return r; - return sd_bus_send_with_reply_and_block(bus, m, 0, error, reply); + r = sd_bus_message_append(m, "a(sa(sv))", 0); + if (r < 0) + return r; + + return sd_bus_call(bus, m, 0, error, reply); } static int start_transient_service( @@ -251,7 +255,7 @@ static int start_transient_service( int r; if (arg_unit) - name = unit_name_mangle_with_suffix(arg_unit, ".service"); + name = unit_name_mangle_with_suffix(arg_unit, MANGLE_NOGLOB, ".service"); else asprintf(&name, "run-%lu.service", (unsigned long) getpid()); if (!name) @@ -338,7 +342,7 @@ static int start_transient_scope( assert(bus); if (arg_unit) - name = unit_name_mangle_with_suffix(arg_unit, ".scope"); + name = unit_name_mangle_with_suffix(arg_unit, MANGLE_NOGLOB, ".scope"); else asprintf(&name, "run-%lu.scope", (unsigned long) getpid()); if (!name)