Patchwork D380: simplemerge: stop reading from, and writing to, files

login
register
mail settings
Submitter phabricator
Date Aug. 14, 2017, 6:16 a.m.
Message ID <differential-rev-PHID-DREV-6nxvmkun5tgcx3zcjfhr-req@phab.mercurial-scm.org>
Download mbox | patch
Permalink /patch/22962/
State Superseded
Headers show

Comments

phabricator - Aug. 14, 2017, 6:16 a.m.
phillco created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  We now use contexts first for everything and also pass them everywhere.

REPOSITORY
  rHG Mercurial

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

AFFECTED FILES
  mercurial/simplemerge.py

CHANGE DETAILS




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

Patch

diff --git a/mercurial/simplemerge.py b/mercurial/simplemerge.py
--- a/mercurial/simplemerge.py
+++ b/mercurial/simplemerge.py
@@ -18,15 +18,12 @@ 
 
 from __future__ import absolute_import
 
-import os
-
 from .i18n import _
 from . import (
     error,
     mdiff,
     pycompat,
     util,
-    vfs as vfsmod,
 )
 
 class CantReprocessAndShowBase(Exception):
@@ -434,12 +431,6 @@ 
     filtereddata should only be True if the data() in your context returns
     decoded data.
     """
-    def readfile(filename):
-        f = open(filename, "rb")
-        text = f.read()
-        f.close()
-        return _verifytext(text, filename, ui, opts)
-
     def readctx(ctx):
         if not ctx:
             return None
@@ -476,20 +467,16 @@ 
                                                 opts.get('label', []))
 
     try:
-        localtext = readctx(localctx) if localctx else readfile(localfile)
-        basetext = readctx(basectx) if basectx else readfile(basefile)
-        othertext = readctx(otherctx) if otherctx else readfile(otherfile)
+        localtext = readctx(localctx)
+        basetext = readctx(basectx)
+        othertext = readctx(otherctx)
     except error.Abort:
         return 1
 
     if opts.get('print'):
         out = ui.fout
-    elif localctx:
+    else:
         out = ctxwriter(localctx)
-    else:
-        localfile = os.path.realpath(localfile)
-        opener = vfsmod.vfs(os.path.dirname(localfile))
-        out = opener(os.path.basename(localfile), "w", atomictemp=True)
 
     m3 = Merge3Text(basetext, localtext, othertext)
     extrakwargs = {