1
0
mirror of https://github.com/systemd/systemd.git synced 2025-03-23 10:50:16 +03:00

run: don't wait for start job to complete when running interactively anyway

Otherwise we'd not read the services input while waiting for the job to
wait, and there's no point in waiting for the job anyway if we wait for
the unit to stop ultimately.

Fixes: #15395
This commit is contained in:
Lennart Poettering 2020-04-22 20:08:34 +02:00 committed by Zbigniew Jędrzejewski-Szmek
parent 73781de41f
commit a7c71d214c

View File

@ -1144,7 +1144,11 @@ static int start_transient_service(
assert_not_reached("Can't allocate tty via ssh");
}
if (!arg_no_block) {
/* Optionally, wait for the start job to complete. If we are supposed to read the service's stdin
* lets skip this however, because we should start that already when the start job is running, and
* there's little point in waiting for the start job to complete in that case anyway, as we'll wait
* for EOF anyway, which is going to be much later. */
if (!arg_no_block && arg_stdio == ARG_STDIO_NONE) {
r = bus_wait_for_jobs_new(bus, &w);
if (r < 0)
return log_error_errno(r, "Could not watch jobs: %m");