Mercurial > hg
comparison mercurial/dispatch.py @ 26142:7332bf4ae959
dispatch: error out on invalid -R path even if optionalrepo (issue4805) (BC)
Before this patch, repo could be set to None for wrong -R. It's okay for
commands that can reject repo=None, but the command server have a problem
because:
- it accepts repo=None for "unbound" mode
- and it reenters dispatch() where repo object is created for cwd by default
Test outputs are changed because the error is detected earlier. I think new
message is better than ".hg not found".
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 31 Aug 2015 23:29:15 +0900 |
parents | d491f289045f |
children | eb2187ebdf8a |
comparison
equal
deleted
inserted
replaced
26141:fa6ba7c9600b | 26142:7332bf4ae959 |
---|---|
888 raise util.Abort(_("repository '%s' is not local") % path) | 888 raise util.Abort(_("repository '%s' is not local") % path) |
889 repo.ui.setconfig("bundle", "mainreporoot", repo.root, 'repo') | 889 repo.ui.setconfig("bundle", "mainreporoot", repo.root, 'repo') |
890 except error.RequirementError: | 890 except error.RequirementError: |
891 raise | 891 raise |
892 except error.RepoError: | 892 except error.RepoError: |
893 if rpath and rpath[-1]: # invalid -R path | |
894 raise | |
893 if cmd not in commands.optionalrepo.split(): | 895 if cmd not in commands.optionalrepo.split(): |
894 if (cmd in commands.inferrepo.split() and | 896 if (cmd in commands.inferrepo.split() and |
895 args and not path): # try to infer -R from command args | 897 args and not path): # try to infer -R from command args |
896 repos = map(cmdutil.findrepo, args) | 898 repos = map(cmdutil.findrepo, args) |
897 guess = repos[0] | 899 guess = repos[0] |