[PATCH 2 of 5] remove: eliminate forget call on workingctx

Adrian Buehlmann adrian at cadifra.com
Mon May 23 09:56:10 CDT 2011


# HG changeset patch
# User Adrian Buehlmann <adrian at cadifra.com>
# Date 1306147863 -7200
# Node ID cef67681abdfa654259aa380dfa92d844c73889f
# Parent  647a8cde6157b77484e7074e295bd84415b57cd5
remove: eliminate forget call on workingctx

so we can spare use acquring wlock twice

diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -3915,15 +3915,15 @@
             ret = 1
 
     if force:
-        remove, forget = modified + deleted + clean, added
+        remove = modified + deleted + clean + added
     elif after:
-        remove, forget = deleted, []
+        remove = deleted
         for f in modified + added + clean:
             ui.warn(_('not removing %s: file still exists (use -f'
                       ' to force removal)\n') % m.rel(f))
             ret = 1
     else:
-        remove, forget = deleted + clean, []
+        remove = deleted + clean
         for f in modified:
             ui.warn(_('not removing %s: file is modified (use -f'
                       ' to force removal)\n') % m.rel(f))
@@ -3933,12 +3933,11 @@
                       ' to force removal)\n') % m.rel(f))
             ret = 1
 
-    for f in sorted(remove + forget):
+    for f in sorted(remove):
         if ui.verbose or not m.exact(f):
             ui.status(_('removing %s\n') % m.rel(f))
 
-    repo[None].forget(forget)
-    repo[None].remove(remove, unlink=not after)
+    repo[None].remove(remove, unlink=not after, unlinkadded=False)
     return ret
 
 @command('rename|move|mv',


More information about the Mercurial-devel mailing list