diff --git a/lib/cmdlib.py b/lib/cmdlib.py index c61bc4d5521f9a4f49bbd03fdfa3dae5ecd9fa85..0e1e5827e37d20f3e988ee6330b5b18e00d636ed 100644 --- a/lib/cmdlib.py +++ b/lib/cmdlib.py @@ -721,12 +721,17 @@ def _ReleaseLocks(lu, level, names=None, keep=None): else: should_release = None - if should_release: + owned = lu.owned_locks(level) + if not owned: + # Not owning any lock at this level, do nothing + pass + + elif should_release: retain = [] release = [] # Determine which locks to release - for name in lu.owned_locks(level): + for name in owned: if should_release(name): release.append(name) else: