On Tue, 3 Nov 2009, Junio C Hamano wrote: > Daniel Barkalow <barkalow@xxxxxxxxxxxx> writes: > > > cmd_ls_remote() was calling transport_get() with a NULL remote and a > > non-NULL url in the case where it was run outside a git > > repository. This involved a bunch of ill-tested special > > cases. Instead, simply get the struct remote for the URL with > > remote_get(), which works fine outside a git repository, and can also > > take global options into account. > > > > This fixes a tiny and obscure bug where "git ls-remote" without a repo > > didn't support global url.*.insteadOf, even though "git clone" and > > "git ls-remote" in any repo did. > > > > Also, enforce that all callers provide a struct remote to transport_get(). > > > > Signed-off-by: Daniel Barkalow <barkalow@xxxxxxxxxxxx> > > --- > > This is sufficient to stop the segfault when tring "git ls-remote > > http://..." outside of a repo, but not to make it work, which requires > > either something simple but not ideal or something complex. > > Thanks; I think this and your other patch are important fixes, and should > go directly on 'maint'. Do you prefer to queue them on 'next' to cook for > a week instead? I don't think a week on 'next' is likely to turn up any new information; these are all uncommon code paths. It might be worth seeing if the original reporter is happy with how it's behaving now, though. -Daniel *This .sig left intentionally blank* -- 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