fetch: make set_head() call easier to read

We ignore any error returned from set_head(), but 638060dcb9 (fetch
set_head: refactor to use remote directly, 2025-01-26) left its call in
a noop "if" conditional as a sort of note-to-self.

When c834d1a7ce (fetch: only respect followRemoteHEAD with configured
refspecs, 2025-03-18) added a "do_set_head" flag, it was rolled into the
same conditional, putting set_head() on the right-hand side of a
short-circuit AND.

That's not wrong, but it really hides the point of the line, which
is (maybe) calling the function.

Instead, let's have a full if() block for the flag, and then our comment
(with some rewording) will be sufficient to clarify the error handling.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King
2025-04-04 04:58:12 -04:00
committed by Junio C Hamano
parent aab0f899d9
commit f9356f9cb4

View File

@@ -1903,12 +1903,13 @@ static int do_fetch(struct transport *transport,
"you need to specify exactly one branch with the --set-upstream option"));
}
}
if (do_set_head && set_head(remote_refs, transport->remote))
;
if (do_set_head) {
/*
* Way too many cases where this can go wrong
* so let's just fail silently for now.
* Way too many cases where this can go wrong so let's just
* ignore errors and fail silently for now.
*/
set_head(remote_refs, transport->remote);
}
cleanup:
if (retcode) {