# HG changeset patch # User Pulkit Goyal <7895pulkit@gmail.com> # Date 2020-07-24 19:47:35 # Node ID cb0cd87e16b45c6a6b4539641d45dcc0f9b2941a # Parent 6a8eafaeff3baf58f6c8649e273e3e6008649874 merge: unify logic of couple of if-else's in manifestmerge() Right now manifestmerge() contains very nested if-else conditions and it's not easy to understand what is happening. I was looking for easy unifications and found these two. Differential Revision: https://phab.mercurial-scm.org/D8834 diff --git a/mercurial/merge.py b/mercurial/merge.py --- a/mercurial/merge.py +++ b/mercurial/merge.py @@ -760,20 +760,14 @@ def manifestmerge( fa = branch_copies1.copy.get( f, None ) or branch_copies2.copy.get(f, None) + args, msg = None, None if fa is not None: - mresult.addfile( - f, - mergestatemod.ACTION_MERGE, - (f, f, fa, False, pa.node()), - b'both renamed from %s' % fa, - ) + args = (f, f, fa, False, pa.node()) + msg = b'both renamed from %s' % fa else: - mresult.addfile( - f, - mergestatemod.ACTION_MERGE, - (f, f, None, False, pa.node()), - b'both created', - ) + args = (f, f, None, False, pa.node()) + msg = b'both created' + mresult.addfile(f, mergestatemod.ACTION_MERGE, args, msg) else: a = ma[f] fla = ma.flags(f) @@ -898,20 +892,14 @@ def manifestmerge( ) elif f in branch_copies2.copy: f2 = branch_copies2.copy[f] + msg, args = None, None if f2 in m2: - mresult.addfile( - f, - mergestatemod.ACTION_MERGE, - (f2, f, f2, False, pa.node()), - b'remote copied from %s' % f2, - ) + args = (f2, f, f2, False, pa.node()) + msg = b'remote copied from %s' % f2 else: - mresult.addfile( - f, - mergestatemod.ACTION_MERGE, - (f2, f, f2, True, pa.node()), - b'remote moved from %s' % f2, - ) + args = (f2, f, f2, True, pa.node()) + msg = b'remote moved from %s' % f2 + mresult.addfile(f, mergestatemod.ACTION_MERGE, args, msg) elif f not in ma: # local unknown, remote created: the logic is described by the # following table: