From: Lennart Poettering Date: Fri, 29 Oct 2010 04:04:42 +0000 (+0200) Subject: job: recursively fail BoundBy dependencies X-Git-Tag: v12~96 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e6a3ff9593e88a57390534b8ad3de7a57cafbdb0;p=systemd job: recursively fail BoundBy dependencies --- diff --git a/src/job.c b/src/job.c index 8a74f8b6..8ab12cd6 100644 --- a/src/job.c +++ b/src/job.c @@ -506,6 +506,13 @@ int job_finish_and_invalidate(Job *j, bool success) { other->meta.job->type == JOB_RELOAD_OR_START)) job_finish_and_invalidate(other->meta.job, false); + SET_FOREACH(other, u->meta.dependencies[UNIT_BOUND_BY], i) + if (other->meta.job && + (other->meta.job->type == JOB_START || + other->meta.job->type == JOB_VERIFY_ACTIVE || + other->meta.job->type == JOB_RELOAD_OR_START)) + job_finish_and_invalidate(other->meta.job, false); + SET_FOREACH(other, u->meta.dependencies[UNIT_REQUIRED_BY_OVERRIDABLE], i) if (other->meta.job && !other->meta.job->override &&