java-topology/defects/salt/patch/salt-0001-cloud-cycle-detection-set.patch

33 lines
1.2 KiB
Diff

# UNDF: UNDF-2026-000000658
--- a/salt/cloud/__init__.py
+++ b/salt/cloud/__init__.py
@@ -1830,18 +1830,18 @@ class Map(Cloud):
def _has_loop(self, dmap, seen=None, val=None):
if seen is None:
for values in dmap["create"].values():
- seen = []
+ seen = set()
try:
machines = values["requires"]
except KeyError:
machines = []
for machine in machines:
- if self._has_loop(dmap, seen=list(seen), val=machine):
+ if self._has_loop(dmap, seen=set(seen), val=machine):
return True
else:
if val in seen:
return True
- seen.append(val)
+ seen.add(val)
try:
machines = dmap["create"][val]["requires"]
except KeyError:
machines = []
for machine in machines:
- if self._has_loop(dmap, seen=list(seen), val=machine):
+ if self._has_loop(dmap, seen=set(seen), val=machine):
return True
return False