comparison mercurial/dirstate.py @ 18654:d9ff580fcaa2

Merge
author Bryan O'Sullivan <bryano@fb.com>
date Sun, 10 Feb 2013 16:21:30 -0800
parents 2cbd27f4f3c4 0969980308c7
children 05cf40f9b0ec
comparison
equal deleted inserted replaced
18651:e556659340f0 18654:d9ff580fcaa2
691 results[nf] = None 691 results[nf] = None
692 692
693 # step 3: report unseen items in the dmap hash 693 # step 3: report unseen items in the dmap hash
694 if not skipstep3 and not exact: 694 if not skipstep3 and not exact:
695 visit = sorted([f for f in dmap if f not in results and matchfn(f)]) 695 visit = sorted([f for f in dmap if f not in results and matchfn(f)])
696 nf = iter(visit).next 696 if unknown:
697 for st in util.statfiles([join(i) for i in visit]): 697 # unknown == True means we walked the full directory tree above.
698 results[nf()] = st 698 # So if a file is not seen it was either a) not matching matchfn
699 # b) ignored, c) missing, or d) under a symlink directory.
700 audit_path = scmutil.pathauditor(self._root)
701
702 for nf in iter(visit):
703 # Report ignored items in the dmap as long as they are not
704 # under a symlink directory.
705 if ignore(nf) and audit_path.check(nf):
706 results[nf] = util.statfiles([join(nf)])[0]
707 else:
708 # It's either missing or under a symlink directory
709 results[nf] = None
710 else:
711 # We may not have walked the full directory tree above,
712 # so stat everything we missed.
713 nf = iter(visit).next
714 for st in util.statfiles([join(i) for i in visit]):
715 results[nf()] = st
699 for s in subrepos: 716 for s in subrepos:
700 del results[s] 717 del results[s]
701 del results['.hg'] 718 del results['.hg']
702 return results 719 return results
703 720