diff options
Diffstat (limited to 'ipalib')
-rw-r--r-- | ipalib/frontend.py | 10 | ||||
-rw-r--r-- | ipalib/plugins/baseldap.py | 2 |
2 files changed, 9 insertions, 3 deletions
diff --git a/ipalib/frontend.py b/ipalib/frontend.py index ac1f67ee1..6be50ba52 100644 --- a/ipalib/frontend.py +++ b/ipalib/frontend.py @@ -538,9 +538,15 @@ class Command(HasParam): if attr in self.params: value = self.params[attr](value) if append and attr in newdict: - newdict[attr].append(value) + if type(value) in (tuple,): + newdict[attr] += list(value) + else: + newdict[attr].append(value) else: - newdict[attr] = [value] + if type(value) in (tuple,): + newdict[attr] = list(value) + else: + newdict[attr] = [value] return newdict def __attributes_2_entry(self, kw): diff --git a/ipalib/plugins/baseldap.py b/ipalib/plugins/baseldap.py index 6b7153b51..3299f8015 100644 --- a/ipalib/plugins/baseldap.py +++ b/ipalib/plugins/baseldap.py @@ -700,7 +700,7 @@ class LDAPUpdate(LDAPQuery, crud.Update): for a in old_entry: if not isinstance(entry_attrs[a], (list, tuple)): entry_attrs[a] = [entry_attrs[a]] - entry_attrs[a] += old_entry[a] + entry_attrs[a] = list(entry_attrs[a]) + old_entry[a] if options.get('all', False): attrs_list = ['*'] + self.obj.default_attributes |