mercurial/dirstate.py
changeset 6033 a1ebd5cd7e55
parent 6032 b41f0d6a74fc
child 6048 cfb4a51da7d5
--- a/mercurial/dirstate.py	Fri Feb 08 18:07:55 2008 -0200
+++ b/mercurial/dirstate.py	Fri Feb 08 18:07:55 2008 -0200
@@ -530,6 +530,7 @@
         lookup, modified, added, unknown, ignored = [], [], [], [], []
         removed, deleted, clean = [], [], []
 
+        files = files or []
         _join = self._join
         lstat = os.lstat
         cmap = self._copymap
@@ -547,8 +548,9 @@
             if fn in dmap:
                 type_, mode, size, time, foo = dmap[fn]
             else:
-                if list_ignored and self._ignore(fn):
-                    iadd(fn)
+                if (list_ignored or fn in files) and self._dirignore(fn):
+                    if list_ignored:
+                        iadd(fn)
                 else:
                     uadd(fn)
                 continue