mirror of
https://github.com/git/git.git
synced 2026-03-17 04:00:11 +01:00
names_conflict(): simplify implementation
Save a bunch of lines of code and a couple of strlen() calls. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
53699dc56b
commit
44db760870
17
refs.c
17
refs.c
@@ -1083,19 +1083,10 @@ static int remove_empty_directories(const char *file)
|
||||
*/
|
||||
static int names_conflict(const char *refname1, const char *refname2)
|
||||
{
|
||||
int len1 = strlen(refname1);
|
||||
int len2 = strlen(refname2);
|
||||
int cmplen;
|
||||
const char *lead;
|
||||
|
||||
if (len1 < len2) {
|
||||
cmplen = len1;
|
||||
lead = refname2;
|
||||
} else {
|
||||
cmplen = len2;
|
||||
lead = refname1;
|
||||
}
|
||||
return !strncmp(refname1, refname2, cmplen) && lead[cmplen] == '/';
|
||||
for (; *refname1 && *refname1 == *refname2; refname1++, refname2++)
|
||||
;
|
||||
return (*refname1 == '\0' && *refname2 == '/')
|
||||
|| (*refname1 == '/' && *refname2 == '\0');
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user