Skip to content

Commit 2744009

Browse files
committed
Merge branch 'rs/use-xstrncmpz'
Code clean-up. * rs/use-xstrncmpz: use xstrncmpz()
2 parents cf47fb7 + f0e578c commit 2744009

File tree

10 files changed

+38
-16
lines changed

10 files changed

+38
-16
lines changed

archive-tar.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,7 @@ static struct archiver *find_tar_filter(const char *name, size_t len)
365365
int i;
366366
for (i = 0; i < nr_tar_filters; i++) {
367367
struct archiver *ar = tar_filters[i];
368-
if (!strncmp(ar->name, name, len) && !ar->name[len])
368+
if (!xstrncmpz(ar->name, name, len))
369369
return ar;
370370
}
371371
return NULL;

builtin/fast-export.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,8 +136,7 @@ static int anonymized_entry_cmp(const void *cmp_data UNUSED,
136136
a = container_of(eptr, const struct anonymized_entry, hash);
137137
if (keydata) {
138138
const struct anonymized_entry_key *key = keydata;
139-
int equal = !strncmp(a->orig, key->orig, key->orig_len) &&
140-
!a->orig[key->orig_len];
139+
int equal = !xstrncmpz(a->orig, key->orig, key->orig_len);
141140
return !equal;
142141
}
143142

builtin/merge.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,7 @@ static struct strategy *get_strategy(const char *name)
192192
int j, found = 0;
193193
struct cmdname *ent = main_cmds.names[i];
194194
for (j = 0; !found && j < ARRAY_SIZE(all_strategy); j++)
195-
if (!strncmp(ent->name, all_strategy[j].name, ent->len)
196-
&& !all_strategy[j].name[ent->len])
195+
if (!xstrncmpz(all_strategy[j].name, ent->name, ent->len))
197196
found = 1;
198197
if (!found)
199198
add_cmdname(&not_strategies, ent->name, ent->len);

builtin/reflog.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,7 @@ static struct reflog_expire_cfg *find_cfg_ent(const char *pattern, size_t len)
9696
reflog_expire_cfg_tail = &reflog_expire_cfg;
9797

9898
for (ent = reflog_expire_cfg; ent; ent = ent->next)
99-
if (!strncmp(ent->pattern, pattern, len) &&
100-
ent->pattern[len] == '\0')
99+
if (!xstrncmpz(ent->pattern, pattern, len))
101100
return ent;
102101

103102
FLEX_ALLOC_MEM(ent, pattern, pattern, len);

contrib/coccinelle/xstrncmpz.cocci

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
@@
2+
expression S, T, L;
3+
@@
4+
(
5+
- strncmp(S, T, L) || S[L]
6+
+ !!xstrncmpz(S, T, L)
7+
|
8+
- strncmp(S, T, L) || S[L] != '\0'
9+
+ !!xstrncmpz(S, T, L)
10+
|
11+
- strncmp(S, T, L) || T[L]
12+
+ !!xstrncmpz(T, S, L)
13+
|
14+
- strncmp(S, T, L) || T[L] != '\0'
15+
+ !!xstrncmpz(T, S, L)
16+
|
17+
- !strncmp(S, T, L) && !S[L]
18+
+ !xstrncmpz(S, T, L)
19+
|
20+
- !strncmp(S, T, L) && S[L] == '\0'
21+
+ !xstrncmpz(S, T, L)
22+
|
23+
- !strncmp(S, T, L) && !T[L]
24+
+ !xstrncmpz(T, S, L)
25+
|
26+
- !strncmp(S, T, L) && T[L] == '\0'
27+
+ !xstrncmpz(T, S, L)
28+
)

convert.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1028,7 +1028,7 @@ static int read_convert_config(const char *var, const char *value,
10281028
if (parse_config_key(var, "filter", &name, &namelen, &key) < 0 || !name)
10291029
return 0;
10301030
for (drv = user_convert; drv; drv = drv->next)
1031-
if (!strncmp(drv->name, name, namelen) && !drv->name[namelen])
1031+
if (!xstrncmpz(drv->name, name, namelen))
10321032
break;
10331033
if (!drv) {
10341034
CALLOC_ARRAY(drv, 1);

merge-ll.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ static int read_merge_config(const char *var, const char *value,
292292
* after seeing merge.<name>.var1.
293293
*/
294294
for (fn = ll_user_merge; fn; fn = fn->next)
295-
if (!strncmp(fn->name, name, namelen) && !fn->name[namelen])
295+
if (!xstrncmpz(fn->name, name, namelen))
296296
break;
297297
if (!fn) {
298298
CALLOC_ARRAY(fn, 1);

object.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,7 @@ int type_from_string_gently(const char *str, ssize_t len, int gentle)
4747
len = strlen(str);
4848

4949
for (i = 1; i < ARRAY_SIZE(object_type_strings); i++)
50-
if (!strncmp(str, object_type_strings[i], len) &&
51-
object_type_strings[i][len] == '\0')
50+
if (!xstrncmpz(object_type_strings[i], str, len))
5251
return i;
5352

5453
if (gentle)

remote.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ static int remotes_hash_cmp(const void *cmp_data UNUSED,
105105
b = container_of(entry_or_key, const struct remote, ent);
106106

107107
if (key)
108-
return strncmp(a->name, key->str, key->len) || a->name[key->len];
108+
return !!xstrncmpz(a->name, key->str, key->len);
109109
else
110110
return strcmp(a->name, b->name);
111111
}
@@ -189,8 +189,7 @@ static int branches_hash_cmp(const void *cmp_data UNUSED,
189189
b = container_of(entry_or_key, const struct branch, ent);
190190

191191
if (key)
192-
return strncmp(a->name, key->str, key->len) ||
193-
a->name[key->len];
192+
return !!xstrncmpz(a->name, key->str, key->len);
194193
else
195194
return strcmp(a->name, b->name);
196195
}

userdiff.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -323,8 +323,7 @@ static int userdiff_find_by_namelen_cb(struct userdiff_driver *driver,
323323
{
324324
struct find_by_namelen_data *cb_data = priv;
325325

326-
if (!strncmp(driver->name, cb_data->name, cb_data->len) &&
327-
!driver->name[cb_data->len]) {
326+
if (!xstrncmpz(driver->name, cb_data->name, cb_data->len)) {
328327
cb_data->driver = driver;
329328
return 1; /* tell the caller to stop iterating */
330329
}

0 commit comments

Comments
 (0)