core: log if the service to activate vanished before we activate it
Normally this shouldn't happen unless the daemon is reloaded. A similar check is already in place in socket.c for the socket activation case. This hopefully makes #1526 non-fatal, though it will not fix this, and there's something else to fix.
This commit is contained in:
parent
9ea79b459e
commit
995c5e96cd
|
@ -585,6 +585,12 @@ static void busname_enter_running(BusName *n) {
|
|||
}
|
||||
|
||||
if (!pending) {
|
||||
if (!UNIT_ISSET(n->service)) {
|
||||
log_unit_error(UNIT(n), "Service to activate vanished, refusing activation.");
|
||||
r = -ENOENT;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
r = manager_add_job(UNIT(n)->manager, JOB_START, UNIT_DEREF(n->service), JOB_REPLACE, true, &error, NULL);
|
||||
if (r < 0)
|
||||
goto fail;
|
||||
|
|
Loading…
Reference in a new issue