# HG changeset patch # User Bryan O'Sullivan # Date 1452892486 28800 # Node ID 28d0c0ef327b28fb8682938a5656a513e99177f9 # Parent 09820fb88e14b76f8e4cae52cd4dd4c01394cd47 with: use context manager for wlock in copy diff -r 09820fb88e14 -r 28d0c0ef327b mercurial/context.py --- a/mercurial/context.py Fri Jan 15 13:14:46 2016 -0800 +++ b/mercurial/context.py Fri Jan 15 13:14:46 2016 -0800 @@ -1483,15 +1483,12 @@ self._repo.ui.warn(_("copy failed: %s is not a file or a " "symbolic link\n") % dest) else: - wlock = self._repo.wlock() - try: + with self._repo.wlock(): if self._repo.dirstate[dest] in '?': self._repo.dirstate.add(dest) elif self._repo.dirstate[dest] in 'r': self._repo.dirstate.normallookup(dest) self._repo.dirstate.copy(source, dest) - finally: - wlock.release() def match(self, pats=[], include=None, exclude=None, default='glob', listsubrepos=False, badfn=None):