diff -r f9e50ee4c52b -r 05c680ebf512 mercurial/merge.py --- a/mercurial/merge.py Sun Jun 25 16:58:26 2017 -0700 +++ b/mercurial/merge.py Sun Jun 25 17:00:15 2017 -0700 @@ -492,7 +492,7 @@ # restore local if hash != nullhex: f = self._repo.vfs('merge/' + hash) - self._repo.wwrite(dfile, f.read(), flags) + wctx[dfile].write(f.read(), flags) f.close() else: wctx[dfile].remove(ignoremissing=True) @@ -1270,7 +1270,7 @@ f0, flags = args repo.ui.note(_("moving %s to %s\n") % (f0, f)) audit(f) - repo.wwrite(f, wctx.filectx(f0).data(), flags) + wctx[f].write(wctx.filectx(f0).data(), flags) wctx[f0].remove() updated += 1 @@ -1281,7 +1281,7 @@ progress(_updating, z, item=f, total=numupdates, unit=_files) f0, flags = args repo.ui.note(_("getting %s to %s\n") % (f0, f)) - repo.wwrite(f, mctx.filectx(f0).data(), flags) + wctx[f].write(mctx.filectx(f0).data(), flags) updated += 1 # exec