Mercurial > public > mercurial-scm > hg-stable
diff mercurial/streamclone.py @ 52044:0ad269e24075
stream: open volatile file through the manager
To do more subtle things, we need more control.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 01 Oct 2024 15:55:29 +0200 |
parents | e308439339e2 |
children | 4801fde72cc2 |
line wrap: on
line diff
--- a/mercurial/streamclone.py Mon Oct 14 15:11:49 2024 +0200 +++ b/mercurial/streamclone.py Tue Oct 01 15:55:29 2024 +0200 @@ -608,6 +608,12 @@ unmodified.""" return self._copies.get(src, src) + @contextlib.contextmanager + def open(self, src): + actual_path = self._copies.get(src, src) + with open(actual_path, 'rb') as fp: + yield fp + def __exit__(self, *args, **kwars): """discard all backups""" for tmp in self._copies.values():