summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 28ca0c9)
raw | patch | inline | side by side (parent: 28ca0c9)
author | Ilari Liusvaara <ilari.liusvaara@elisanet.fi> | |
Sat, 9 Jan 2010 17:28:12 +0000 (19:28 +0200) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Sun, 10 Jan 2010 06:38:49 +0000 (22:38 -0800) |
If one had multiple URLs configured for remote with previous one
having forced helper but the subsequent one not, like:
url = foo::bar://baz
url = ssh://example/example.git
Then the subsequent URL is passed to foo helper, which isn't
correct. Fix it to be parsed normally by resetting foreign VCS
name before parsing the URL protocol.
Signed-off-by: Ilari Liusvaara <ilari.liusvaara@elisanet.fi>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
having forced helper but the subsequent one not, like:
url = foo::bar://baz
url = ssh://example/example.git
Then the subsequent URL is passed to foo helper, which isn't
correct. Fix it to be parsed normally by resetting foreign VCS
name before parsing the URL protocol.
Signed-off-by: Ilari Liusvaara <ilari.liusvaara@elisanet.fi>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
transport.c | patch | blob | history |
diff --git a/transport.c b/transport.c
index 652bf0bd8394056d3de558d0eb1635e02fc9f329..b5332c018b2951f63b15f51a3e3fb00999532a96 100644 (file)
--- a/transport.c
+++ b/transport.c
url = remote->url[0];
ret->url = url;
+ /* In case previous URL had helper forced, reset it. */
+ remote->foreign_vcs = NULL;
+
/* maybe it is a foreign URL? */
if (url) {
const char *p = url;