From 49111a708eb3bc8488c56c4695fa36c826bf3657 Mon Sep 17 00:00:00 2001 From: Zbigniew Jędrzejewski-Szmek Date: Tue, 18 Sep 2012 22:03:34 +0200 Subject: systemctl: warn about triggering units only at the end Instead of checking each unit separately, check once at the end. This should avoid spurious warnings about a service being triggerable by other stuff. --- src/systemctl/systemctl.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'src/systemctl/systemctl.c') diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index 729d4dd324..cc9c775251 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -1584,11 +1584,6 @@ static int start_unit_one( p = NULL; } - /* When stopping a unit warn if it can still be triggered by - * another active unit (socket, path, timer) */ - if (!arg_quiet && streq(method, "StopUnit")) - check_triggering_units(bus, name); - return 0; } @@ -1723,6 +1718,16 @@ static int start_unit(DBusConnection *bus, char **args) { ret = r; goto finish; } + + /* When stopping units, warn if they can still be triggered by + * another active unit (socket, path, timer) */ + if (!arg_quiet && streq(method, "StopUnit")) { + if (one_name) + check_triggering_units(bus, one_name); + else + STRV_FOREACH(name, args+1) + check_triggering_units(bus, *name); + } } finish: -- cgit v1.2.3-54-g00ecf