changeset 22167:d4bc38f6eab7 stable

cmdutil: add a hook for making custom non-follow log file matchers This will be used by largefiles (and basically only by largefiles) in an upcoming patch.
author Siddharth Agarwal <sid0@fb.com>
date Wed, 13 Aug 2014 15:17:03 -0700
parents ac7a3b2a85e3
children 1b9d0dc1bbe1
files mercurial/cmdutil.py
diffstat 1 files changed, 7 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/cmdutil.py	Wed Aug 13 15:15:13 2014 -0700
+++ b/mercurial/cmdutil.py	Wed Aug 13 15:17:03 2014 -0700
@@ -1519,6 +1519,10 @@
 
     return filematcher
 
+def _makenofollowlogfilematcher(repo, pats, opts):
+    '''hook for extensions to override the filematcher for non-follow cases'''
+    return None
+
 def _makelogrevset(repo, pats, opts, revs):
     """Return (expr, filematcher) where expr is a revset string built
     from log options and file patterns or None. If --stat or --patch
@@ -1635,7 +1639,9 @@
             filematcher = _makefollowlogfilematcher(repo, match.files(),
                                                     followfirst)
         else:
-            filematcher = lambda rev: match
+            filematcher = _makenofollowlogfilematcher(repo, pats, opts)
+            if filematcher is None:
+                filematcher = lambda rev: match
 
     expr = []
     for op, val in opts.iteritems():