Daniel Barkalow <barkalow@xxxxxxxxxxxx> writes: > Except that you missed the "remote == NULL" case (noted below), this is > what I was thinking of. > > Acked-by: Daniel Barkalow <barkalow@xxxxxxxxxxxx> >> if (!remote) >> die("No remote provided to transport_get()"); >> >> ret->remote = remote; >> + helper = remote->foreign_vcs; > > Needs to be "helper = remote ? remote->foreign_vcs : NULL", for the same > reason that the test below had been "remote && remote->foreign_vcs". Even in the presense of "if remote is NULL then we die" in the context above? >> >> if (!url && remote && remote->url) >> 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; >> @@ -933,11 +932,11 @@ struct transport *transport_get(struct remote *remote, const char *url) >> while (isalnum(*p)) >> p++; >> if (!prefixcmp(p, "::")) >> - remote->foreign_vcs = xstrndup(url, p - url); >> + helper = xstrndup(url, p - url); >> } >> >> - if (remote && remote->foreign_vcs) { >> - transport_helper_init(ret, remote->foreign_vcs); >> + if (helper) { >> + transport_helper_init(ret, helper); >> } else if (!prefixcmp(url, "rsync:")) { >> ret->get_refs_list = get_refs_via_rsync; >> ret->fetch = fetch_objs_via_rsync; >> -- >> 1.7.0.rc0.19.gb557e6 >> >> -- 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