mercurial/dirstate.py
changeset 49356 a87443d4aec0
parent 49355 0540c1628fd4
child 49357 5b7a10ddb42f
--- a/mercurial/dirstate.py	Sat Jun 11 00:56:50 2022 +0200
+++ b/mercurial/dirstate.py	Sat Jun 11 00:58:41 2022 +0200
@@ -984,6 +984,11 @@
             ignore = util.always
             dirignore = util.always
 
+        if self._sparsematchfn is not None:
+            em = matchmod.exact(match.files())
+            sm = matchmod.unionmatcher([self._sparsematcher, em])
+            match = matchmod.intersectmatchers(match, sm)
+
         matchfn = match.matchfn
         matchalways = match.always()
         matchtdir = match.traversedir