mirror of
https://github.com/git/git.git
synced 2024-05-09 23:06:09 +02:00
trailer: retire trailer_info_get() from API
Make trailer_info_get() "static" to be file-scoped to trailer.c, because no one outside of trailer.c uses it. Remove its declaration from <trailer.h>. We have to also reposition it to be above parse_trailers(), which depends on it. Signed-off-by: Linus Arver <linusa@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
3ddad1b1aa
commit
87727d4165
92
trailer.c
92
trailer.c
|
@ -979,6 +979,52 @@ static struct trailer_info *trailer_info_new(void)
|
|||
return info;
|
||||
}
|
||||
|
||||
static struct trailer_info *trailer_info_get(const struct process_trailer_options *opts,
|
||||
const char *str)
|
||||
{
|
||||
struct trailer_info *info = trailer_info_new();
|
||||
size_t end_of_log_message = 0, trailer_block_start = 0;
|
||||
struct strbuf **trailer_lines, **ptr;
|
||||
char **trailer_strings = NULL;
|
||||
size_t nr = 0, alloc = 0;
|
||||
char **last = NULL;
|
||||
|
||||
trailer_config_init();
|
||||
|
||||
end_of_log_message = find_end_of_log_message(str, opts->no_divider);
|
||||
trailer_block_start = find_trailer_block_start(str, end_of_log_message);
|
||||
|
||||
trailer_lines = strbuf_split_buf(str + trailer_block_start,
|
||||
end_of_log_message - trailer_block_start,
|
||||
'\n',
|
||||
0);
|
||||
for (ptr = trailer_lines; *ptr; ptr++) {
|
||||
if (last && isspace((*ptr)->buf[0])) {
|
||||
struct strbuf sb = STRBUF_INIT;
|
||||
strbuf_attach(&sb, *last, strlen(*last), strlen(*last));
|
||||
strbuf_addbuf(&sb, *ptr);
|
||||
*last = strbuf_detach(&sb, NULL);
|
||||
continue;
|
||||
}
|
||||
ALLOC_GROW(trailer_strings, nr + 1, alloc);
|
||||
trailer_strings[nr] = strbuf_detach(*ptr, NULL);
|
||||
last = find_separator(trailer_strings[nr], separators) >= 1
|
||||
? &trailer_strings[nr]
|
||||
: NULL;
|
||||
nr++;
|
||||
}
|
||||
strbuf_list_free(trailer_lines);
|
||||
|
||||
info->blank_line_before_trailer = ends_with_blank_line(str,
|
||||
trailer_block_start);
|
||||
info->trailer_block_start = trailer_block_start;
|
||||
info->trailer_block_end = end_of_log_message;
|
||||
info->trailers = trailer_strings;
|
||||
info->trailer_nr = nr;
|
||||
|
||||
return info;
|
||||
}
|
||||
|
||||
/*
|
||||
* Parse trailers in "str", populating the trailer info and "head"
|
||||
* linked list structure.
|
||||
|
@ -1044,52 +1090,6 @@ int blank_line_before_trailer_block(struct trailer_info *info)
|
|||
return info->blank_line_before_trailer;
|
||||
}
|
||||
|
||||
struct trailer_info *trailer_info_get(const struct process_trailer_options *opts,
|
||||
const char *str)
|
||||
{
|
||||
struct trailer_info *info = trailer_info_new();
|
||||
size_t end_of_log_message = 0, trailer_block_start = 0;
|
||||
struct strbuf **trailer_lines, **ptr;
|
||||
char **trailer_strings = NULL;
|
||||
size_t nr = 0, alloc = 0;
|
||||
char **last = NULL;
|
||||
|
||||
trailer_config_init();
|
||||
|
||||
end_of_log_message = find_end_of_log_message(str, opts->no_divider);
|
||||
trailer_block_start = find_trailer_block_start(str, end_of_log_message);
|
||||
|
||||
trailer_lines = strbuf_split_buf(str + trailer_block_start,
|
||||
end_of_log_message - trailer_block_start,
|
||||
'\n',
|
||||
0);
|
||||
for (ptr = trailer_lines; *ptr; ptr++) {
|
||||
if (last && isspace((*ptr)->buf[0])) {
|
||||
struct strbuf sb = STRBUF_INIT;
|
||||
strbuf_attach(&sb, *last, strlen(*last), strlen(*last));
|
||||
strbuf_addbuf(&sb, *ptr);
|
||||
*last = strbuf_detach(&sb, NULL);
|
||||
continue;
|
||||
}
|
||||
ALLOC_GROW(trailer_strings, nr + 1, alloc);
|
||||
trailer_strings[nr] = strbuf_detach(*ptr, NULL);
|
||||
last = find_separator(trailer_strings[nr], separators) >= 1
|
||||
? &trailer_strings[nr]
|
||||
: NULL;
|
||||
nr++;
|
||||
}
|
||||
strbuf_list_free(trailer_lines);
|
||||
|
||||
info->blank_line_before_trailer = ends_with_blank_line(str,
|
||||
trailer_block_start);
|
||||
info->trailer_block_start = trailer_block_start;
|
||||
info->trailer_block_end = end_of_log_message;
|
||||
info->trailers = trailer_strings;
|
||||
info->trailer_nr = nr;
|
||||
|
||||
return info;
|
||||
}
|
||||
|
||||
void trailer_info_release(struct trailer_info *info)
|
||||
{
|
||||
size_t i;
|
||||
|
|
|
@ -73,8 +73,6 @@ void process_trailers_lists(struct list_head *head,
|
|||
struct trailer_info *parse_trailers(const struct process_trailer_options *,
|
||||
const char *str,
|
||||
struct list_head *head);
|
||||
struct trailer_info *trailer_info_get(const struct process_trailer_options *,
|
||||
const char *str);
|
||||
|
||||
size_t trailer_block_start(struct trailer_info *);
|
||||
size_t trailer_block_end(struct trailer_info *);
|
||||
|
|
Loading…
Reference in New Issue