--- a/hgext/directaccess.py Wed Aug 12 20:38:39 2015 -0700
+++ b/hgext/directaccess.py Mon Aug 17 17:01:38 2015 -0700
@@ -129,6 +129,8 @@
hashre = util.re.compile('[0-9a-fA-F]{1,40}')
+_listtuple = ('symbol', '_list')
+
def gethashsymbols(tree):
# Returns the list of symbols of the tree that look like hashes
# for example for the revset 3::abe3ff it will return ('abe3ff')
@@ -143,6 +145,13 @@
if hashre.match(tree[1]):
return [tree[1]]
return []
+ elif tree[0] == "func" and tree[1] == _listtuple:
+ # the optimiser will group sequence of hash request
+ result = []
+ for entry in tree[2][1].split('\0'):
+ if hashre.match(entry):
+ result.append(entry)
+ return result
elif len(tree) == 3:
return gethashsymbols(tree[1]) + gethashsymbols(tree[2])
else: