# HG changeset patch # User Pierre-Yves David # Date 1626449560 -7200 # Node ID 822c67420c77592ef71e8cd51d80441ee4491398 # Parent 6816ae362ddda5e599066440d6ed6c4d57a0bc2d dirstatemap: use the default code to handle "merged" case This simplify the conditionnal a bit since most of it is handled by the common code. Differential Revision: https://phab.mercurial-scm.org/D11329 diff -r 6816ae362ddd -r 822c67420c77 mercurial/dirstatemap.py --- a/mercurial/dirstatemap.py Fri Jul 16 17:29:16 2021 +0200 +++ b/mercurial/dirstatemap.py Fri Jul 16 17:32:40 2021 +0200 @@ -260,16 +260,13 @@ elif merged: # XXX might be merged and removed ? entry = self.get(filename) - if entry is not None and entry.tracked: + if entry is None or not entry.tracked: # XXX mostly replicate dirstate.other parent. We should get # the higher layer to pass us more reliable data where `merged` - # actually mean merged. Dropping the else clause will show - # failure in `test-graft.t` - self.addfile(filename, merged=True) - return - else: - self.addfile(filename, from_p2=True) - return + # actually mean merged. Dropping this clause will show failure + # in `test-graft.t` + merged = False + clean_p2 = True elif not (p1_tracked or p2_tracked) and wc_tracked: pass # file is added, nothing special to adjust elif (p1_tracked or p2_tracked) and not wc_tracked: