upload-pack: centralize setup of sideband-all config

We read uploadpack.allowsidebandall to set a matching flag in our
upload_pack_data struct. But for our tests, we also respect
GIT_TEST_SIDEBAND_ALL from the environment, and anybody looking at the
flag in the struct needs to remember to check both. There's only one
such piece of code now, but we're about to add another.

So let's have the config step actually fold the environment value into
the struct, letting the rest of the code use the flag in the obvious
way.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King
2024-02-28 17:47:18 -05:00
committed by Junio C Hamano
parent 922fdefb84
commit 37aa89b068

View File

@ -1390,6 +1390,8 @@ static void get_upload_pack_config(struct repository *r,
{
repo_config(r, upload_pack_config, data);
git_protected_config(upload_pack_protected_config, data);
data->allow_sideband_all |= git_env_bool("GIT_TEST_SIDEBAND_ALL", 0);
}
void upload_pack(const int advertise_refs, const int stateless_rpc,
@ -1639,8 +1641,7 @@ static void process_args(struct packet_reader *request,
continue;
}
if ((git_env_bool("GIT_TEST_SIDEBAND_ALL", 0) ||
data->allow_sideband_all) &&
if (data->allow_sideband_all &&
!strcmp(arg, "sideband-all")) {
data->writer.use_sideband = 1;
continue;