diff options
Diffstat (limited to 'http-fetch.c')
| -rw-r--r-- | http-fetch.c | 16 | 
1 files changed, 5 insertions, 11 deletions
diff --git a/http-fetch.c b/http-fetch.c index 762c750d7a..923904f97f 100644 --- a/http-fetch.c +++ b/http-fetch.c @@ -14,8 +14,7 @@ int main(int argc, const char **argv)  	int commits;  	const char **write_ref = NULL;  	char **commit_id; -	const char *url; -	char *rewritten_url = NULL; +	char *url = NULL;  	int arg = 1;  	int rc = 0;  	int get_tree = 0; @@ -57,19 +56,14 @@ int main(int argc, const char **argv)  		commit_id = (char **) &argv[arg++];  		commits = 1;  	} -	url = argv[arg]; + +	if (argv[arg]) +		str_end_url_with_slash(argv[arg], &url);  	prefix = setup_git_directory();  	git_config(git_default_config, NULL); -	if (url && url[strlen(url)-1] != '/') { -		rewritten_url = xmalloc(strlen(url)+2); -		strcpy(rewritten_url, url); -		strcat(rewritten_url, "/"); -		url = rewritten_url; -	} -  	http_init(NULL);  	walker = get_http_walker(url);  	walker->get_tree = get_tree; @@ -93,7 +87,7 @@ int main(int argc, const char **argv)  	walker_free(walker);  	http_cleanup(); -	free(rewritten_url); +	free(url);  	return rc;  }  | 
