Code

clone: delay cloning until after remote HEAD checking
[git.git] / transport.c
index a99b7c9c457c4ac3b76dc6859507711f847e5f62..43666394df3627a3d066f84ae529101d6e9a9f92 100644 (file)
@@ -895,8 +895,10 @@ struct transport *transport_get(struct remote *remote, const char *url)
 
                while (is_urlschemechar(p == url, *p))
                        p++;
-               if (!prefixcmp(p, "::"))
+               if (!prefixcmp(p, "::")) {
                        helper = xstrndup(url, p - url);
+                       remote->foreign_vcs = helper;
+               }
        }
 
        if (helper) {
@@ -938,6 +940,7 @@ struct transport *transport_get(struct remote *remote, const char *url)
                char *handler = xmalloc(len + 1);
                handler[len] = 0;
                strncpy(handler, url, len);
+               remote->foreign_vcs = handler;
                transport_helper_init(ret, handler);
        }