parse_connect_url() checks if the path component of the URL is empty and if so causes the program to die. As the function is to be used at other call sites which do not require this check, move up the error checking to the existing caller. Signed-off-by: Patrick Steinhardt <ps@xxxxxx> --- connect.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/connect.c b/connect.c index bdbcee4..e8b813d 100644 --- a/connect.c +++ b/connect.c @@ -613,9 +613,6 @@ enum protocol parse_connect_url(const char *url_orig, char **ret_host, else path = strchr(end, separator); - if (!path || !*path) - die("No path specified. See 'man git-pull' for valid url syntax"); - /* * null-terminate hostname and point path to ~ for URL's like this: * ssh://host.xz/~user/repo @@ -665,6 +662,9 @@ struct child_process *git_connect(int fd[2], const char *url, signal(SIGCHLD, SIG_DFL); protocol = parse_connect_url(url, &hostandport, &path); + if (!path || !*path) + die("No path specified. See 'man git-pull' for valid url syntax"); + if ((flags & CONNECT_DIAG_URL) && (protocol != PROTO_SSH)) { printf("Diag: url=%s\n", url ? url : "NULL"); printf("Diag: protocol=%s\n", prot_name(protocol)); -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html