Mercurial > hg-stable
changeset 40787:9199548525fc
subrepo-git: use an official origvfs when appropriate
The origvfs has the auditor properly set and can move file without issue.
The current code is currently working without errors because rename are not
audited, yet.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Thu, 22 Nov 2018 20:01:28 +0100 |
parents | 65591a513b9c |
children | 34f15db81cf0 |
files | mercurial/subrepo.py |
diffstat | 1 files changed, 5 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/subrepo.py Thu Nov 22 19:26:05 2018 +0100 +++ b/mercurial/subrepo.py Thu Nov 22 20:01:28 2018 +0100 @@ -1810,11 +1810,15 @@ if not opts.get(r'no_backup'): status = self.status(None) names = status.modified + origvfs = scmutil.getorigvfs(self.ui, self._subparent) + if origvfs is None: + origvfs = self.wvfs for name in names: bakname = scmutil.origpath(self.ui, self._subparent, name) self.ui.note(_('saving current version of %s as %s\n') % (name, bakname)) - self.wvfs.rename(name, bakname) + name = self.wvfs.join(name) + origvfs.rename(name, bakname) if not opts.get(r'dry_run'): self.get(substate, overwrite=True)