[PATCH 4 of 5] merge: remove useless dirstate.normallookup invocation in applyupdates
FUJIWARA Katsunori
foozy at lares.dti.ne.jp
Wed May 27 12:03:24 CDT 2015
# HG changeset patch
# User FUJIWARA Katsunori <foozy at lares.dti.ne.jp>
# Date 1432745859 -32400
# Thu May 28 01:57:39 2015 +0900
# Node ID 6d5d5a1d294d51f4a76cafec192278fd961047bf
# Parent 883211e892300c7750838a83e849e760fd309003
merge: remove useless dirstate.normallookup invocation in applyupdates
Explicit `dirstate.normallookup()` invocation via `dirtysubstate()` in
`applyupdates()` is now useless, because previous patch makes
`dirstate.unsureifambig()` be invoked at the end of
`localrepository.wwrite()`, which is indirectly used while
`submerge()` to write merged `.hgsubstate` out.
`dirstate.normallookup()` invocation was introduced by 6becb9dbca25 to
avoid occasional test failure. This is partial backout of it (added
tests are still left).
diff --git a/mercurial/merge.py b/mercurial/merge.py
--- a/mercurial/merge.py
+++ b/mercurial/merge.py
@@ -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
More information about the Mercurial-devel
mailing list