changeset 19107:fcf08023c011 stable

match: fix root calculation for combining regexps with simple paths The fall-back root for walking is the repo root, not no root. The "roots" do however also end up in m.files() which is used in various ways, for instance to indicate whether matches are exact. The change could thus have other impacts.
author Mads Kiilerich <madski@unity3d.com>
date Tue, 30 Apr 2013 01:04:35 +0200
parents 3d0dd890c525
children cb95716da5fe
files mercurial/match.py tests/test-status.t
diffstat 2 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/match.py
+++ b/mercurial/match.py
@@ -344,7 +344,7 @@
             r.append('/'.join(root) or '.')
         elif kind in ('relpath', 'path'):
             r.append(name or '.')
-        elif kind == 'relglob':
+        else: # relglob, re, relre
             r.append('.')
     return r
 
--- a/tests/test-status.t
+++ b/tests/test-status.t
@@ -100,6 +100,13 @@
   ? ../1/in_b_1
   ? in_b_2
   ? ../in_b
+
+combining patterns with root and patterns without a root works
+
+  $ hg st a/in_a re:.*b$
+  ? a/in_a
+  ? b/in_b
+
   $ cd ..
 
   $ hg init repo2