[PATCH 4 of 8 V2] cmdutil: remove useless dirstate.normallookup() invocation in revert()

FUJIWARA Katsunori foozy at lares.dti.ne.jp
Wed Jul 8 03:08:40 CDT 2015


# HG changeset patch
# User FUJIWARA Katsunori <foozy at lares.dti.ne.jp>
# Date 1436342469 -32400
#      Wed Jul 08 17:01:09 2015 +0900
# Node ID 012495bec8b68fff0501811f7a3981b6afb919cb
# Parent  42762df2c45ee39299e1d5b359e3d70b7af41c5c
cmdutil: remove useless dirstate.normallookup() invocation in revert()

Explicit `dirstate.normallookup()` invocation in `revert()` 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 21b33f0460e0 to
avoid occasional test failure (see issue4583 for detail). This is
partial backout of it (added tests are still left).

diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -3068,7 +3068,7 @@
     node = ctx.node()
     def checkout(f):
         fc = ctx[f]
-        return repo.wwrite(f, fc.data(), fc.flags())
+        repo.wwrite(f, fc.data(), fc.flags())
 
     audit_path = pathutil.pathauditor(repo.root)
     for f in actions['forget'][0]:
@@ -3135,13 +3135,9 @@
         del fp
     else:
         for f in actions['revert'][0]:
-            wsize = checkout(f)
+            checkout(f)
             if normal:
                 normal(f)
-            elif wsize == repo.dirstate._map[f][2]:
-                # changes may be overlooked without normallookup,
-                # if size isn't changed at reverting
-                repo.dirstate.normallookup(f)
 
     for f in actions['add'][0]:
         # Don't checkout modified files, they are already created by the diff


More information about the Mercurial-devel mailing list