Show 113 quoted lines
> Signed-off-by: Li Chen <me@linux.beauty>
> ---
> v7:
> Rename the input parameter from sb to input.
>
> builtin/interpret-trailers.c | 36 ------------------------------------
> trailer.c | 36 ++++++++++++++++++++++++++++++++++++
> trailer.h | 3 +++
> 3 files changed, 39 insertions(+), 36 deletions(-)
>
> diff --git a/builtin/interpret-trailers.c b/builtin/interpret-trailers.c
> index 69f9d67ec0..1354109e0f 100644
> --- a/builtin/interpret-trailers.c
> +++ b/builtin/interpret-trailers.c
> @@ -136,42 +136,6 @@ static void read_input_file(struct strbuf *sb, const char *file)
> strbuf_complete_line(sb);
> }
>
> -static void process_trailers(const struct process_trailer_options *opts,
> - struct list_head *new_trailer_head,
> - struct strbuf *input, struct strbuf *out)
> -{
> - LIST_HEAD(head);
> - struct trailer_block *trailer_block;
> -
> - trailer_block = parse_trailers(opts, input->buf, &head);
> -
> - /* Print the lines before the trailer block */
> - if (!opts->only_trailers)
> - strbuf_add(out, input->buf, trailer_block_start(trailer_block));
> -
> - if (!opts->only_trailers && !blank_line_before_trailer_block(trailer_block))
> - strbuf_addch(out, '\n');
> -
> - if (!opts->only_input) {
> - LIST_HEAD(config_head);
> - LIST_HEAD(arg_head);
> - parse_trailers_from_config(&config_head);
> - parse_trailers_from_command_line_args(&arg_head, new_trailer_head);
> - list_splice(&config_head, &arg_head);
> - process_trailers_lists(&head, &arg_head);
> - }
> -
> - /* Print trailer block. */
> - format_trailers(opts, &head, out);
> - free_trailers(&head);
> -
> - /* Print the lines after the trailer block as is. */
> - if (!opts->only_trailers)
> - strbuf_add(out, input->buf + trailer_block_end(trailer_block),
> - input->len - trailer_block_end(trailer_block));
> - trailer_block_release(trailer_block);
> -}
> -
> static void interpret_trailers(const struct process_trailer_options *opts,
> struct list_head *new_trailer_head,
> const char *file)
> diff --git a/trailer.c b/trailer.c
> index 911a81ed99..0c9200506d 100644
> --- a/trailer.c
> +++ b/trailer.c
> @@ -1235,3 +1235,39 @@ int amend_file_with_trailers(const char *path, const struct strvec *trailer_args
> strvec_pushv(&run_trailer.args, trailer_args->v);
> return run_command(&run_trailer);
> }
> +
> +void process_trailers(const struct process_trailer_options *opts,
> + struct list_head *new_trailer_head,
> + struct strbuf *input, struct strbuf *out)
> +{
> + LIST_HEAD(head);
> + struct trailer_block *trailer_block;
> +
> + trailer_block = parse_trailers(opts, input->buf, &head);
> +
> + /* Print the lines before the trailer block */
> + if (!opts->only_trailers)
> + strbuf_add(out, input->buf, trailer_block_start(trailer_block));
> +
> + if (!opts->only_trailers && !blank_line_before_trailer_block(trailer_block))
> + strbuf_addch(out, '\n');
> +
> + if (!opts->only_input) {
> + LIST_HEAD(config_head);
> + LIST_HEAD(arg_head);
> + parse_trailers_from_config(&config_head);
> + parse_trailers_from_command_line_args(&arg_head, new_trailer_head);
> + list_splice(&config_head, &arg_head);
> + process_trailers_lists(&head, &arg_head);
> + }
> +
> + /* Print trailer block. */
> + format_trailers(opts, &head, out);
> + free_trailers(&head);
> +
> + /* Print the lines after the trailer block as is. */
> + if (!opts->only_trailers)
> + strbuf_add(out, input->buf + trailer_block_end(trailer_block),
> + input->len - trailer_block_end(trailer_block));
> + trailer_block_release(trailer_block);
> +}
> diff --git a/trailer.h b/trailer.h
> index 4740549586..531fa1a13f 100644
> --- a/trailer.h
> +++ b/trailer.h
> @@ -202,4 +202,7 @@ void trailer_iterator_release(struct trailer_iterator *iter);
> */
> int amend_file_with_trailers(const char *path, const struct strvec *trailer_args);
>
> +void process_trailers(const struct process_trailer_options *opts,
> + struct list_head *new_trailer_head,
> + struct strbuf *input, struct strbuf *out);
> #endif /* TRAILER_H */