promisor-remote: compare remote names case sensitively

Because the "[remote "nick"] fetch = ..." configuration variables
have the nickname in the second part, the nicknames are case
sensitive, unlike the first and the third component (i.e.
"remote.origin.fetch" and "Remote.origin.FETCH" are the same thing,
but "remote.Origin.fetch" and "remote.origin.fetch" are different).

Let's follow the way Git works in general and compare the remote
names case sensitively when processing advertised remotes.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Christian Couder
2025-03-18 12:00:08 +01:00
committed by Junio C Hamano
parent caed258323
commit 2c0dcb9754
2 changed files with 4 additions and 4 deletions

View File

@@ -370,13 +370,13 @@ char *promisor_remote_info(struct repository *repo)
/*
* Find first index of 'nicks' where there is 'nick'. 'nick' is
* compared case insensitively to the strings in 'nicks'. If not found
* compared case sensitively to the strings in 'nicks'. If not found
* 'nicks->nr' is returned.
*/
static size_t remote_nick_find(struct strvec *nicks, const char *nick)
{
for (size_t i = 0; i < nicks->nr; i++)
if (!strcasecmp(nicks->v[i], nick))
if (!strcmp(nicks->v[i], nick))
return i;
return nicks->nr;
}