remotefilelog: fix bug in maybesparsematch returning alwaysmatcher
The description of the method says that it should return None if sparse is not
used in this repository; since sparse.matcher() returns alwaysmatcher if sparse
is not enabled, I'm using that as the signal to return None here to preserve the
previous behavior.
Differential Revision: https://phab.mercurial-scm.org/D5487
--- a/hgext/remotefilelog/shallowrepo.py Fri Dec 28 12:51:47 2018 -0800
+++ b/hgext/remotefilelog/shallowrepo.py Thu Dec 27 15:19:46 2018 -0800
@@ -143,8 +143,13 @@
sparse repository.
'''
if revs:
- return sparse.matcher(repo, revs=revs)
- return sparse.matcher(repo)
+ ret = sparse.matcher(repo, revs=revs)
+ else:
+ ret = sparse.matcher(repo)
+
+ if ret.always():
+ return None
+ return ret
def file(self, f):
if f[0] == '/':