Merge branch 'rs/clarify-entry-cmp-sslice'
* rs/clarify-entry-cmp-sslice: refs: use strncmp() instead of strlen() and memcmp()
This commit is contained in:
commit
f12e49ae87
10
refs.c
10
refs.c
@ -333,14 +333,12 @@ struct string_slice {
|
|||||||
|
|
||||||
static int ref_entry_cmp_sslice(const void *key_, const void *ent_)
|
static int ref_entry_cmp_sslice(const void *key_, const void *ent_)
|
||||||
{
|
{
|
||||||
struct string_slice *key = (struct string_slice *)key_;
|
const struct string_slice *key = key_;
|
||||||
struct ref_entry *ent = *(struct ref_entry **)ent_;
|
const struct ref_entry *ent = *(const struct ref_entry * const *)ent_;
|
||||||
int entlen = strlen(ent->name);
|
int cmp = strncmp(key->str, ent->name, key->len);
|
||||||
int cmplen = key->len < entlen ? key->len : entlen;
|
|
||||||
int cmp = memcmp(key->str, ent->name, cmplen);
|
|
||||||
if (cmp)
|
if (cmp)
|
||||||
return cmp;
|
return cmp;
|
||||||
return key->len - entlen;
|
return '\0' - (unsigned char)ent->name[key->len];
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user