Merge branch 'ab/fetch-set-upstream-while-detached'
"git fetch --set-upstream" did not check if there is a current branch, leading to a segfault when it is run on a detached HEAD, which has been corrected. * ab/fetch-set-upstream-while-detached: pull, fetch: fix segfault in --set-upstream option
This commit is contained in:
@ -1643,6 +1643,16 @@ static int do_fetch(struct transport *transport,
|
||||
}
|
||||
}
|
||||
if (source_ref) {
|
||||
if (!branch) {
|
||||
const char *shortname = source_ref->name;
|
||||
skip_prefix(shortname, "refs/heads/", &shortname);
|
||||
|
||||
warning(_("could not set upstream of HEAD to '%s' from '%s' when "
|
||||
"it does not point to any branch."),
|
||||
shortname, transport->remote->name);
|
||||
goto skip;
|
||||
}
|
||||
|
||||
if (!strcmp(source_ref->name, "HEAD") ||
|
||||
starts_with(source_ref->name, "refs/heads/"))
|
||||
install_branch_config(0,
|
||||
|
||||
Reference in New Issue
Block a user