Skip to content

Commit b3873c3

Browse files
peffgitster
authored andcommitted
reflog: use parse_config_key in config callback
This doesn't save any lines, but does keep us from doing error-prone pointer arithmetic with constants. Signed-off-by: Jeff King <[email protected]> Reviewed-by: Jonathan Nieder <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 4d5c6ce commit b3873c3

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

builtin/reflog.c

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -510,26 +510,27 @@ static int parse_expire_cfg_value(const char *var, const char *value, unsigned l
510510

511511
static int reflog_expire_config(const char *var, const char *value, void *cb)
512512
{
513-
const char *lastdot = strrchr(var, '.');
513+
const char *pattern, *key;
514+
int pattern_len;
514515
unsigned long expire;
515516
int slot;
516517
struct reflog_expire_cfg *ent;
517518

518-
if (!lastdot || prefixcmp(var, "gc."))
519+
if (parse_config_key(var, "gc", &pattern, &pattern_len, &key) < 0)
519520
return git_default_config(var, value, cb);
520521

521-
if (!strcmp(lastdot, ".reflogexpire")) {
522+
if (!strcmp(key, "reflogexpire")) {
522523
slot = EXPIRE_TOTAL;
523524
if (parse_expire_cfg_value(var, value, &expire))
524525
return -1;
525-
} else if (!strcmp(lastdot, ".reflogexpireunreachable")) {
526+
} else if (!strcmp(key, "reflogexpireunreachable")) {
526527
slot = EXPIRE_UNREACH;
527528
if (parse_expire_cfg_value(var, value, &expire))
528529
return -1;
529530
} else
530531
return git_default_config(var, value, cb);
531532

532-
if (lastdot == var + 2) {
533+
if (!pattern) {
533534
switch (slot) {
534535
case EXPIRE_TOTAL:
535536
default_reflog_expire = expire;
@@ -541,7 +542,7 @@ static int reflog_expire_config(const char *var, const char *value, void *cb)
541542
return 0;
542543
}
543544

544-
ent = find_cfg_ent(var + 3, lastdot - (var+3));
545+
ent = find_cfg_ent(pattern, pattern_len);
545546
if (!ent)
546547
return -1;
547548
switch (slot) {

0 commit comments

Comments
 (0)