Always use wrapper to lock collection

Also run the hook after creation of the principal collection.
This commit is contained in:
Unrud 2016-08-07 17:14:47 +02:00 committed by GitHub
parent 4236077b04
commit ee5b8facda

View File

@ -284,12 +284,12 @@ class Application:
if user and is_authenticated:
principal_path = "/%s/" % user
if self.authorized(user, principal_path, "w"):
with self.Collection.acquire_lock("r"):
with self._lock_collection("r", user):
principal = next(
self.Collection.discover(principal_path, depth="1"),
None)
if not principal:
with self.Collection.acquire_lock("w"):
with self._lock_collection("w", user):
self.Collection.create_collection(principal_path)
# Get content