##// END OF EJS Templates
dirstate: include explicit matches in match.traversedir calls...
Martin von Zweigbergk -
r44112:95d2eab0 default
parent child Browse files
Show More
@@ -939,6 +939,11 b' class dirstate(object):'
939 939
940 940 # step 1: find all explicit files
941 941 results, work, dirsnotfound = self._walkexplicit(match, subrepos)
942 if matchtdir:
943 for d in work:
944 matchtdir(d[0])
945 for d in dirsnotfound:
946 matchtdir(d)
942 947
943 948 skipstep3 = skipstep3 and not (work or dirsnotfound)
944 949 work = [d for d in work if not dirignore(d[0])]
@@ -2676,7 +2676,6 b' def purge('
2676 2676
2677 2677 # There's no API to copy a matcher. So mutate the passed matcher and
2678 2678 # restore it when we're done.
2679 oldexplicitdir = matcher.explicitdir
2680 2679 oldtraversedir = matcher.traversedir
2681 2680
2682 2681 res = []
@@ -2684,7 +2683,7 b' def purge('
2684 2683 try:
2685 2684 if removeemptydirs:
2686 2685 directories = []
2687 matcher.explicitdir = matcher.traversedir = directories.append
2686 matcher.traversedir = directories.append
2688 2687
2689 2688 status = repo.status(match=matcher, ignored=ignored, unknown=True)
2690 2689
@@ -2706,5 +2705,4 b' def purge('
2706 2705 return res
2707 2706
2708 2707 finally:
2709 matcher.explicitdir = oldexplicitdir
2710 2708 matcher.traversedir = oldtraversedir
General Comments 0
You need to be logged in to leave comments. Login now