int new_refs;
struct ref *ref, *local_refs;
struct remote *remote;
- char *rewritten_url = NULL;
git_extract_argv0_path(argv[0]);
}
if (!repo->url) {
char *path = strstr(arg, "//");
- repo->url = arg;
- repo->path_len = strlen(arg);
+ str_end_url_with_slash(arg, &repo->url);
+ repo->path_len = strlen(repo->url);
if (path) {
repo->path = strchr(path+2, '/');
if (repo->path)
remote->url[remote->url_nr++] = repo->url;
http_init(remote);
- if (repo->url && repo->url[strlen(repo->url)-1] != '/') {
- rewritten_url = xmalloc(strlen(repo->url)+2);
- strcpy(rewritten_url, repo->url);
- strcat(rewritten_url, "/");
- repo->path = rewritten_url + (repo->path - repo->url);
- repo->path_len++;
- repo->url = rewritten_url;
- }
-
#ifdef USE_CURL_MULTI
is_running_queue = 0;
#endif
}
cleanup:
- free(rewritten_url);
if (info_ref_lock)
unlock_remote(info_ref_lock);
free(repo);