From 2de0b9e913823d6e564ea82d80d014451c238f20 Mon Sep 17 00:00:00 2001 From: Michael Olbrich Date: Mon, 25 Jul 2016 20:02:55 +0200 Subject: transaction: don't cancel jobs for units with IgnoreOnIsolate=true (#3671) This is important if a job was queued for a unit but not yet started. Without this, the job will be canceled and is never executed even though IgnoreOnIsolate it set to 'true'. --- src/core/transaction.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/core/transaction.c b/src/core/transaction.c index af539171fd..8370b864fb 100644 --- a/src/core/transaction.c +++ b/src/core/transaction.c @@ -591,6 +591,9 @@ static int transaction_apply(Transaction *tr, Manager *m, JobMode mode) { HASHMAP_FOREACH(j, m->jobs, i) { assert(j->installed); + if (j->unit->ignore_on_isolate) + continue; + if (hashmap_get(tr->jobs, j->unit)) continue; -- cgit v1.2.3-54-g00ecf