From: Lennart Poettering Date: Wed, 7 Apr 2010 14:38:56 +0000 (+0200) Subject: job: fix pulldown-on-failure logic X-Git-Tag: v1~620 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=dda5a135b8311ed3be5d930a4f6f560d638813f4 job: fix pulldown-on-failure logic --- diff --git a/job.c b/job.c index 6e04683fd..5e250d58f 100644 --- a/job.c +++ b/job.c @@ -485,26 +485,26 @@ int job_finish_and_invalidate(Job *j, bool success) { SET_FOREACH(other, u->meta.dependencies[UNIT_REQUIRED_BY], i) if (other->meta.job && - (other->meta.type == JOB_START || - other->meta.type == JOB_VERIFY_ACTIVE || - other->meta.type == JOB_RELOAD_OR_START)) + (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_SOFT_REQUIRED_BY], i) if (other->meta.job && !other->meta.job->forced && - (other->meta.type == JOB_START || - other->meta.type == JOB_VERIFY_ACTIVE || - other->meta.type == JOB_RELOAD_OR_START)) + (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); } else if (t == JOB_STOP) { SET_FOREACH(other, u->meta.dependencies[UNIT_CONFLICTS], i) if (other->meta.job && - (t == JOB_START || - t == JOB_VERIFY_ACTIVE || - t == JOB_RELOAD_OR_START)) + (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); } }