diff options
author | Junio C Hamano <gitster@pobox.com> | 2023-03-28 20:51:52 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2023-03-28 20:51:52 +0300 |
commit | f879501ad08b228797f5473092186900828681d5 (patch) | |
tree | c48bcb2ba63e3101da8d9f24e5a242e4538589d8 /remote-curl.c | |
parent | 8069aa01cd83d187813117b34ed718245d56eac9 (diff) | |
parent | eaa0fd658442c2b83dfad918d636bba3ca3b4087 (diff) |
Merge branch 'jk/fix-proto-downgrade-to-v0'
Transports that do not support protocol v2 did not correctly fall
back to protocol v0 under certain conditions, which has been
corrected.
* jk/fix-proto-downgrade-to-v0:
git_connect(): fix corner cases in downgrading v2 to v0
Diffstat (limited to 'remote-curl.c')
-rw-r--r-- | remote-curl.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/remote-curl.c b/remote-curl.c index ed7e3a043a..bf5a0b186f 100644 --- a/remote-curl.c +++ b/remote-curl.c @@ -474,10 +474,11 @@ static struct discovery *discover_refs(const char *service, int for_push) /* * NEEDSWORK: If we are trying to use protocol v2 and we are planning - * to perform a push, then fallback to v0 since the client doesn't know - * how to push yet using v2. + * to perform any operation that doesn't involve upload-pack (i.e., a + * fetch, ls-remote, etc), then fallback to v0 since we don't know how + * to do anything else (like push or remote archive) via v2. */ - if (version == protocol_v2 && !strcmp("git-receive-pack", service)) + if (version == protocol_v2 && strcmp("git-upload-pack", service)) version = protocol_v0; /* Add the extra Git-Protocol header */ |