Patchwork D399: filemerge: eliminate most uses of tempfiles

login
register
mail settings
Submitter phabricator
Date Aug. 23, 2017, 7:38 p.m.
Message ID <50f8522340272ff704b58cb37c514069@localhost.localdomain>
Download mbox | patch
Permalink /patch/23273/
State Not Applicable
Headers show

Comments

phabricator - Aug. 23, 2017, 7:38 p.m.
phillco updated this revision to Diff 1222.
phillco edited the summary of this revision.

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D399?vs=906&id=1222

REVISION DETAIL
  https://phab.mercurial-scm.org/D399

AFFECTED FILES
  mercurial/filemerge.py

CHANGE DETAILS




To: phillco, #hg-reviewers
Cc: lothiraldan, mercurial-devel

Patch

diff --git a/mercurial/filemerge.py b/mercurial/filemerge.py
--- a/mercurial/filemerge.py
+++ b/mercurial/filemerge.py
@@ -318,7 +318,7 @@ 
     tool, toolpath, binary, symlink = toolconf
     if symlink or fcd.isabsent() or fco.isabsent():
         return 1
-    a, b, c, back = files
+    unused, unused, unused, back = files
 
     ui = repo.ui
 
@@ -347,7 +347,8 @@ 
             ui.debug(" premerge successful\n")
             return 0
         if premerge not in validkeep:
-            util.copyfile(back, a) # restore from backup and try again
+            # restore from backup and try again
+            util.copyfile(back, repo.wjoin(fcd.path()))
     return 1 # continue merging
 
 def _mergecheck(repo, mynode, orig, fcd, fco, fca, toolconf):
@@ -368,8 +369,6 @@ 
     files. It will fail if there are any conflicts and leave markers in
     the partially merged file. Markers will have two sections, one for each side
     of merge, unless mode equals 'union' which suppresses the markers."""
-    a, b, c, back = files
-
     ui = repo.ui
 
     r = simplemerge.simplemerge(ui, fcd, fca, fco,
@@ -719,7 +718,7 @@ 
 
 def _check(r, ui, tool, fcd, files):
     fd = fcd.path()
-    a, b, c, back = files
+    a, unused, unused, back = files
 
     if not r and (_toolbool(ui, tool, "checkconflicts") or
                   'conflicts' in _toollist(ui, tool, "check")):