[create] On libère les locks dans tous les cas, en particulier si une erreur est levée

This commit is contained in:
Valentin Samir 2013-10-23 16:38:41 +02:00
parent 8431e2d19a
commit 8ecd689289

View file

@ -206,6 +206,7 @@ class CransLdapObject(object):
"""Crée l'objet dans la base ldap, cette méthode vise à faire en sorte que """Crée l'objet dans la base ldap, cette méthode vise à faire en sorte que
l'objet se crée lui-même, si celui qui essaye de le modifier a les droits l'objet se crée lui-même, si celui qui essaye de le modifier a les droits
de le faire.""" de le faire."""
try:
if login is None: if login is None:
login = self.conn.current_login login = self.conn.current_login
self._check_optionnal(comment="créez") self._check_optionnal(comment="créez")
@ -224,6 +225,7 @@ class CransLdapObject(object):
except Exception: except Exception:
print traceback.format_exc() print traceback.format_exc()
return return
finally:
# On nettoie les locks # On nettoie les locks
for key, values in self._modifs.to_ldif().iteritems(): for key, values in self._modifs.to_ldif().iteritems():
for value in values: for value in values: