diff --git a/NEWS b/NEWS index b10a6f538f..fbd9afa2cb 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,17 @@ systemd System and Service Manager +CHANGES WITH 233 in spe + + * The confirmation spawn prompt has been reworked to offer the + following choices: + + (f)ail, don't execute the command and pretend it failed + (s)kip, don't execute the command and pretend it succeeded + (y)es, execute the command + + The 'n' choice for the confirmation spawn prompt has been removed, + because its meaning was confusing. + CHANGES WITH 232: * The new RemoveIPC= option can be used to remove IPC objects owned by diff --git a/src/core/execute.c b/src/core/execute.c index 8b09f71717..10e9dd7cc8 100644 --- a/src/core/execute.c +++ b/src/core/execute.c @@ -731,7 +731,7 @@ static int ask_for_confirmation(const char *vc, const char *cmdline) { return CONFIRM_EXECUTE; } - r = ask_char(&c, "yns", "Execute %s? [Yes, No, Skip] ", cmdline); + r = ask_char(&c, "yfs", "Execute %s? [Yes, Fail, Skip] ", cmdline); if (r < 0) { write_confirm_error_fd(r, STDOUT_FILENO); r = CONFIRM_EXECUTE; @@ -739,13 +739,13 @@ static int ask_for_confirmation(const char *vc, const char *cmdline) { } switch (c) { - case 'n': + case 'f': printf("Failing execution.\n"); - r = CONFIRM_PRETEND_SUCCESS; + r = CONFIRM_PRETEND_FAILURE; break; case 's': printf("Skipping execution.\n"); - r = CONFIRM_PRETEND_FAILURE; + r = CONFIRM_PRETEND_SUCCESS; break; case 'y': r = CONFIRM_EXECUTE;