|
|
17b0f1 |
From b5ed9900d9a02abd78bfb151932748725b7c0bdb Mon Sep 17 00:00:00 2001
|
|
|
17b0f1 |
From: Lennart Poettering <lennart@poettering.net>
|
|
|
17b0f1 |
Date: Thu, 21 May 2015 20:39:23 +0200
|
|
|
17b0f1 |
Subject: [PATCH] core: properly handle jobs that are suppressed to JOB_NOPs
|
|
|
17b0f1 |
when propagating restarts
|
|
|
17b0f1 |
|
|
|
17b0f1 |
Cherry-picked from: 48894cd0
|
|
|
17b0f1 |
Resolves: #1436021
|
|
|
17b0f1 |
---
|
|
|
17b0f1 |
src/core/transaction.c | 7 ++++++-
|
|
|
17b0f1 |
1 file changed, 6 insertions(+), 1 deletion(-)
|
|
|
17b0f1 |
|
|
|
17b0f1 |
diff --git a/src/core/transaction.c b/src/core/transaction.c
|
|
|
17b0f1 |
index 34df15718b..66bbb60665 100644
|
|
|
17b0f1 |
--- a/src/core/transaction.c
|
|
|
17b0f1 |
+++ b/src/core/transaction.c
|
|
|
17b0f1 |
@@ -1023,8 +1023,13 @@ int transaction_add_job_and_dependencies(
|
|
|
17b0f1 |
|
|
|
17b0f1 |
for (j = 0; j < ELEMENTSOF(propagate_deps); j++)
|
|
|
17b0f1 |
SET_FOREACH(dep, ret->unit->dependencies[propagate_deps[j]], i) {
|
|
|
17b0f1 |
+ JobType nt;
|
|
|
17b0f1 |
|
|
|
17b0f1 |
- r = transaction_add_job_and_dependencies(tr, job_type_collapse(ptype, dep), dep, ret, true, override, false, false, ignore_order, e);
|
|
|
17b0f1 |
+ nt = job_type_collapse(ptype, dep);
|
|
|
17b0f1 |
+ if (nt == JOB_NOP)
|
|
|
17b0f1 |
+ continue;
|
|
|
17b0f1 |
+
|
|
|
17b0f1 |
+ r = transaction_add_job_and_dependencies(tr, nt, dep, ret, true, override, false, false, ignore_order, e);
|
|
|
17b0f1 |
if (r < 0) {
|
|
|
17b0f1 |
if (r != -EBADR)
|
|
|
17b0f1 |
goto fail;
|