changeset 25754:19cc443aac34

merge: remove useless dirstate.normallookup() invocation in applyupdates() Explicit 'dirstate.normallookup()' invocation via 'dirtysubstate()' in 'applyupdates()' is useless now, because previous patch fixed the relevant issue by writing in-memory dirstate changes out at the end of dirty check. 'dirstate.normallookup()' invocation was introduced by 6becb9dbca25 to avoid occasional test failure. This is partial backout of it (added tests are still left).
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Wed, 08 Jul 2015 17:01:09 +0900
parents fe03f522dda9
children 72d395e399c1
files mercurial/merge.py
diffstat 1 files changed, 0 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/merge.py	Wed Jul 08 17:01:09 2015 +0900
+++ b/mercurial/merge.py	Wed Jul 08 17:01:09 2015 +0900
@@ -741,15 +741,7 @@
 
     numupdates = sum(len(l) for m, l in actions.items() if m != 'k')
 
-    def dirtysubstate():
-        # mark '.hgsubstate' as possibly dirty forcibly, because
-        # modified '.hgsubstate' is misunderstood as clean,
-        # when both st_size/st_mtime of '.hgsubstate' aren't changed,
-        # even if "submerge" fails and '.hgsubstate' is inconsistent
-        repo.dirstate.normallookup('.hgsubstate')
-
     if [a for a in actions['r'] if a[0] == '.hgsubstate']:
-        dirtysubstate()
         subrepo.submerge(repo, wctx, mctx, wctx, overwrite)
 
     # remove in parallel (must come first)
@@ -768,7 +760,6 @@
     updated = len(actions['g'])
 
     if [a for a in actions['g'] if a[0] == '.hgsubstate']:
-        dirtysubstate()
         subrepo.submerge(repo, wctx, mctx, wctx, overwrite)
 
     # forget (manifest only, just log it) (must come first)
@@ -794,7 +785,6 @@
         z += 1
         progress(_updating, z, item=f, total=numupdates, unit=_files)
         if f == '.hgsubstate': # subrepo states need updating
-            dirtysubstate()
             subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx),
                              overwrite)
             continue