diff --git a/lib/mcpu.py b/lib/mcpu.py index f67114c90cc51ee704df8747e5f5bb7d2e8c4d70..647a69a7d5d36f4364956257f7ec992bdba64fb5 100644 --- a/lib/mcpu.py +++ b/lib/mcpu.py @@ -381,8 +381,6 @@ class Processor(object): if acquired is None: raise _LockAcquireTimeout() - lu.acquired_locks[level] = acquired - else: # Adding locks add_locks = lu.add_locks[level] @@ -395,8 +393,11 @@ class Processor(object): "Couldn't add locks (%s), probably because of a race condition" " with another job, who added them first" % add_locks) - lu.acquired_locks[level] = add_locks + acquired = add_locks + try: + lu.acquired_locks[level] = acquired + result = self._LockAndExecLU(lu, level + 1, calc_timeout) finally: if level in lu.remove_locks: