[PATCH 3 of 4 marmoute-reviewed] lock.release: don't call postrelease functions for inherited locks
Pierre-Yves David
pierre-yves.david at ens-lyon.org
Sun Oct 4 22:54:29 CDT 2015
On 10/04/2015 08:23 PM, Siddharth Agarwal wrote:
> # HG changeset patch
> # User Siddharth Agarwal <sid0 at fb.com>
> # Date 1444014284 25200
> # Sun Oct 04 20:04:44 2015 -0700
> # Node ID 5864aca0e2d7597135a8cd061358a6fd3144325c
> # Parent 7ec3a1cc6f54cb2f94a199b2381d724ec071ba5d
> lock.release: don't call postrelease functions for inherited locks
>
> Review feedback from Pierre-Yves David. The postrelease functions typically
> assume the lock is not held at all.
I've moved that last sentence as an inline comment.
> diff --git a/mercurial/lock.py b/mercurial/lock.py
> --- a/mercurial/lock.py
> +++ b/mercurial/lock.py
> @@ -221,8 +221,9 @@ class lock(object):
> self.vfs.unlink(self.f)
> except OSError:
> pass
> - for callback in self.postrelease:
> - callback()
> + if not self._parentheld:
> + for callback in self.postrelease:
> + callback()
--
Pierre-Yves David
More information about the Mercurial-devel
mailing list