diff options
author | Rob Crittenden <rcritten@redhat.com> | 2011-02-23 10:43:40 -0500 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2011-03-03 11:02:02 -0500 |
commit | f476c097d2ac5f0270ea3207955cd7184ffb9e1d (patch) | |
tree | a303189340b1ae907ae2fd826907ede7010b4d53 /ipaserver/plugins | |
parent | f785af4efea088466f8ec2259c79640b9f94e542 (diff) | |
download | freeipa-f476c097d2ac5f0270ea3207955cd7184ffb9e1d.tar.gz freeipa-f476c097d2ac5f0270ea3207955cd7184ffb9e1d.tar.xz freeipa-f476c097d2ac5f0270ea3207955cd7184ffb9e1d.zip |
Replace only if old and new have nothing in common
Jakub did the initial diagnosis of this, I added a fix for removing
the last entry when removing members and a test case.
ticket 1000
Diffstat (limited to 'ipaserver/plugins')
-rw-r--r-- | ipaserver/plugins/ldap2.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ipaserver/plugins/ldap2.py b/ipaserver/plugins/ldap2.py index 568792d1b..ebbca60e5 100644 --- a/ipaserver/plugins/ldap2.py +++ b/ipaserver/plugins/ldap2.py @@ -798,7 +798,7 @@ class ldap2(CrudBackend, Encoder): force_replace = False if k in self._FORCE_REPLACE_ON_UPDATE_ATTRS or is_single_value: force_replace = True - elif len(adds) == 1 and len(rems) == 1: + elif len(v) > 0 and len(v.intersection(old_v)) == 0: force_replace = True if adds: |