comparison mercurial/filemerge.py @ 34137:c0ce60459d84

merge: pass wctx to premerge, filemerge In the in-memory merge branch. we'll need to call a function (``flushall``) on the wctx inside of _xmerge. This prepares the way so it can be done without hacks like ``fcd.ctx()``. Differential Revision: https://phab.mercurial-scm.org/D449
author Phil Cohen <phillco@fb.com>
date Mon, 11 Sep 2017 13:03:27 -0700
parents cd38b83bfb23
children 9c07cff039bc
comparison
equal deleted inserted replaced
34136:ae95853c250a 34137:c0ce60459d84
624 b = temp("base", fca) 624 b = temp("base", fca)
625 c = temp("other", fco) 625 c = temp("other", fco)
626 626
627 return b, c 627 return b, c
628 628
629 def _filemerge(premerge, repo, mynode, orig, fcd, fco, fca, labels=None): 629 def _filemerge(premerge, repo, wctx, mynode, orig, fcd, fco, fca, labels=None):
630 """perform a 3-way merge in the working directory 630 """perform a 3-way merge in the working directory
631 631
632 premerge = whether this is a premerge 632 premerge = whether this is a premerge
633 mynode = parent node before merge 633 mynode = parent node before merge
634 orig = original local filename before merge 634 orig = original local filename before merge
748 return r 748 return r
749 749
750 def _workingpath(repo, ctx): 750 def _workingpath(repo, ctx):
751 return repo.wjoin(ctx.path()) 751 return repo.wjoin(ctx.path())
752 752
753 def premerge(repo, mynode, orig, fcd, fco, fca, labels=None): 753 def premerge(repo, wctx, mynode, orig, fcd, fco, fca, labels=None):
754 return _filemerge(True, repo, mynode, orig, fcd, fco, fca, labels=labels) 754 return _filemerge(True, repo, wctx, mynode, orig, fcd, fco, fca,
755 755 labels=labels)
756 def filemerge(repo, mynode, orig, fcd, fco, fca, labels=None): 756
757 return _filemerge(False, repo, mynode, orig, fcd, fco, fca, labels=labels) 757 def filemerge(repo, wctx, mynode, orig, fcd, fco, fca, labels=None):
758 return _filemerge(False, repo, wctx, mynode, orig, fcd, fco, fca,
759 labels=labels)
758 760
759 def loadinternalmerge(ui, extname, registrarobj): 761 def loadinternalmerge(ui, extname, registrarobj):
760 """Load internal merge tool from specified registrarobj 762 """Load internal merge tool from specified registrarobj
761 """ 763 """
762 for name, func in registrarobj._table.iteritems(): 764 for name, func in registrarobj._table.iteritems():