equal
deleted
inserted
replaced
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 |