--- a/mercurial/util.py
+++ b/mercurial/util.py
@@ -469,7 +469,7 @@ def _matcher(canonroot, cwd, names, inc,
for p in pat.split('/'):
if contains_glob(p): break
root.append(p)
- return '/'.join(root)
+ return '/'.join(root) or '.'
pats = []
files = []
@@ -483,7 +483,7 @@ def _matcher(canonroot, cwd, names, inc,
pats.append((kind, name))
if kind == 'glob':
root = globprefix(name)
- if root: roots.append(root)
+ roots.append(root)
elif kind == 'relpath':
files.append((kind, name))
roots.append(name)
--- a/tests/test-walk
+++ b/tests/test-walk
@@ -49,6 +49,8 @@ hg debugwalk glob:\*
hg debugwalk 're:.*[kb]$'
hg debugwalk path:beans/black
hg debugwalk beans 'glob:beans/*'
+hg debugwalk 'glob:mamm**'
+hg debugwalk 'glob:mamm**' fennel
hg debugwalk 'glob:j*'
hg debugwalk NOEXIST
mkfifo fifo
--- a/tests/test-walk.out
+++ b/tests/test-walk.out
@@ -90,6 +90,15 @@ f beans/kidney beans/kidney
f beans/navy beans/navy
f beans/pinto beans/pinto
f beans/turtle beans/turtle
+f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
+f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
+f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
+f mammals/skunk mammals/skunk
+f fennel fennel exact
+f mammals/Procyonidae/cacomistle mammals/Procyonidae/cacomistle
+f mammals/Procyonidae/coatimundi mammals/Procyonidae/coatimundi
+f mammals/Procyonidae/raccoon mammals/Procyonidae/raccoon
+f mammals/skunk mammals/skunk
NOEXIST: No such file or directory
fifo: unsupported file type (type is fifo)
m fenugreek fenugreek exact