OC Module - Disable complex list merging. Fixes #31196 (#31387)

* Minor fix.  Fixes #31196

* Disable complex list comparison and merge. Fixes #31196
pull/32661/head
Luka 7 years ago committed by Brian Coca
parent 9b896ca712
commit 431042da8e

@ -347,28 +347,9 @@ class OC(object):
_, changed = self.merge(value, node, changed)
elif isinstance(value, list) and key in destination.keys():
try:
if set(destination[key]) != set(destination[key] +
source[key]):
destination[key] = list(set(destination[key] +
source[key]))
changed = True
except TypeError:
for new_dict in source[key]:
found = False
for old_dict in destination[key]:
if ('name' in old_dict.keys() and
'name' in new_dict.keys()):
if old_dict['name'] == new_dict['name']:
destination[key].remove(old_dict)
break
if old_dict == new_dict:
found = True
break
if not found:
destination[key].append(new_dict)
changed = True
if destination[key] != source[key]:
destination[key] = source[key]
changed = True
elif (key not in destination.keys() or
destination[key] != source[key]):

Loading…
Cancel
Save