equal
deleted
inserted
replaced
467 '''return the non-glob prefix of a path, e.g. foo/* -> foo''' |
467 '''return the non-glob prefix of a path, e.g. foo/* -> foo''' |
468 root = [] |
468 root = [] |
469 for p in pat.split('/'): |
469 for p in pat.split('/'): |
470 if contains_glob(p): break |
470 if contains_glob(p): break |
471 root.append(p) |
471 root.append(p) |
472 return '/'.join(root) |
472 return '/'.join(root) or '.' |
473 |
473 |
474 pats = [] |
474 pats = [] |
475 files = [] |
475 files = [] |
476 roots = [] |
476 roots = [] |
477 for kind, name in [patkind(p, dflt_pat) for p in names]: |
477 for kind, name in [patkind(p, dflt_pat) for p in names]: |
481 kind, name = 'glob', '**' |
481 kind, name = 'glob', '**' |
482 if kind in ('glob', 'path', 're'): |
482 if kind in ('glob', 'path', 're'): |
483 pats.append((kind, name)) |
483 pats.append((kind, name)) |
484 if kind == 'glob': |
484 if kind == 'glob': |
485 root = globprefix(name) |
485 root = globprefix(name) |
486 if root: roots.append(root) |
486 roots.append(root) |
487 elif kind == 'relpath': |
487 elif kind == 'relpath': |
488 files.append((kind, name)) |
488 files.append((kind, name)) |
489 roots.append(name) |
489 roots.append(name) |
490 |
490 |
491 patmatch = matchfn(pats, '$') or always |
491 patmatch = matchfn(pats, '$') or always |