diff -r 01c4ea5e788c -r ce3ecf99a18b mercurial/util.py --- a/mercurial/util.py Sat Mar 10 23:00:47 2007 -0300 +++ b/mercurial/util.py Sat Mar 10 23:00:48 2007 -0300 @@ -433,7 +433,7 @@ elif kind == 'path': return '^' + re.escape(name) + '(?:/|$)' elif kind == 'relglob': - return head + globre(name, '(?:|.*/)', tail) + return head + globre(name, '(?:|.*/)', '(?:/|$)') elif kind == 'relpath': return head + re.escape(name) + tail elif kind == 'relre': @@ -479,7 +479,9 @@ name = canonpath(canonroot, cwd, name) if name == '': kind, name = 'glob', '**' - if kind in ('glob', 'path', 're'): + elif kind == 'relglob': + name = normpath(name) + if kind in ('glob', 'path', 're', 'relglob'): pats.append((kind, name)) if kind == 'glob': root = globprefix(name) @@ -487,6 +489,8 @@ elif kind == 'relpath': files.append((kind, name)) roots.append(name) + elif kind == 'relglob': + roots.append('.') patmatch = matchfn(pats, '$') or always filematch = matchfn(files, '(?:/|$)') or always