X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fsystemctl%2Fsystemctl.c;h=24818492322fc98cecb8343345874afa7e2f74fc;hb=e627440b41bb0284e4892f7aa9d84c77972487e2;hp=2e0aaaa9fadbba410b781e1b35ab78e7b7a5c446;hpb=c67de56f50b83ec0d34308a6de80f6c65879b1b5;p=elogind.git diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 2e0aaaa9f..248184923 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -1537,11 +1537,12 @@ static int start_unit_one( DBUS_TYPE_INVALID); free(n); if (r) { - if (r == -ENOENT && arg_action != ACTION_SYSTEMCTL ) { + if (r == -ENOENT && arg_action != ACTION_SYSTEMCTL ) /* There's always a fallback possible for * legacy actions. */ r = -EADDRNOTAVAIL; - } + else + log_error("Failed to issue method call: %s", bus_error_message(error)); goto finish; } @@ -2147,7 +2148,7 @@ static void print_status_info(UnitStatusInfo *i) { printf("\t Process: %u %s=%s ", p->pid, p->name, strna(t)); free(t); - good = is_clean_exit_lsb(p->code, p->status); + good = is_clean_exit_lsb(p->code, p->status, NULL); if (!good) { on = ansi_highlight_red(true); off = ansi_highlight_red(false); @@ -3143,6 +3144,7 @@ finish: static int daemon_reload(DBusConnection *bus, char **args) { int r; const char *method; + DBusError error; if (arg_action == ACTION_RELOAD) method = "Reload"; @@ -3171,7 +3173,7 @@ static int daemon_reload(DBusConnection *bus, char **args) { "org.freedesktop.systemd1.Manager", method, NULL, - NULL, + &error, DBUS_TYPE_INVALID); if (r == -ENOENT && arg_action != ACTION_SYSTEMCTL) @@ -3182,6 +3184,9 @@ static int daemon_reload(DBusConnection *bus, char **args) { /* On reexecution, we expect a disconnect, not * a reply */ r = 0; + else if (r) + log_error("Failed to issue method call: %s", bus_error_message(&error)); + dbus_error_free(&error); return r; }