diff: drop line_prefix_length field

The diff_options structure holds a line_prefix string and an associated
length. But the length is always just the strlen() of the NUL-terminated
string. Let's simplify the code by just storing the string pointer and
assuming it is NUL-terminated when we use it.

This will cause us to compute the string length in a few extra spots,
but I don't think any of these are particularly hot code paths.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2024-10-03 17:06:54 -04:00 committed by Junio C Hamano
parent 8aeff2c287
commit 2011bb4f34
3 changed files with 2 additions and 8 deletions

1
diff.c
View file

@ -5395,7 +5395,6 @@ static int diff_opt_line_prefix(const struct option *opt,
BUG_ON_OPT_NEG(unset);
options->line_prefix = optarg;
options->line_prefix_length = strlen(options->line_prefix);
graph_setup_line_prefix(options);
return 0;
}

1
diff.h
View file

@ -274,7 +274,6 @@ struct diff_options {
const char *single_follow;
const char *a_prefix, *b_prefix;
const char *line_prefix;
size_t line_prefix_length;
/**
* collection of boolean options that affects the operation, but some do

View file

@ -74,10 +74,7 @@ static void graph_show_line_prefix(const struct diff_options *diffopt)
if (!diffopt || !diffopt->line_prefix)
return;
fwrite(diffopt->line_prefix,
sizeof(char),
diffopt->line_prefix_length,
diffopt->file);
fputs(diffopt->line_prefix, diffopt->file);
}
static const char **column_colors;
@ -321,8 +318,7 @@ static struct strbuf *diff_output_prefix_callback(struct diff_options *opt, void
strbuf_reset(&msgbuf);
if (opt->line_prefix)
strbuf_add(&msgbuf, opt->line_prefix,
opt->line_prefix_length);
strbuf_addstr(&msgbuf, opt->line_prefix);
if (graph)
graph_padding_line(graph, &msgbuf);
return &msgbuf;