Re: [PATCH v4 06/17] trailer: parse trailers from input file
- From
Eric Sunshine <sunshine@sunshineco.com>
- Date
- Jan 31, 2014, 16:45 UTC
- Message-ID
- <CAPig+cQu0ZPYH9xq6jvw3+FgsMy4T8jTP+2NMnS6qtdAqbcCiQ@mail.gmail.com>
- In-Reply-To
- <20140130064921.7504.62053.chriscool@tuxfamily.org>
On Thu, Jan 30, 2014 at 1:49 AM, Christian Couder <chriscool@tuxfamily.org> wrote:
Show 30 quoted lines
> This patch reads trailers from an input file, parses
> them and puts the result into a doubly linked list.
>
> Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
> ---
> trailer.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 62 insertions(+)
>
> diff --git a/trailer.c b/trailer.c
> index f48fd94..084b3e1 100644
> --- a/trailer.c
> +++ b/trailer.c
> @@ -439,3 +439,65 @@ static struct trailer_item *process_command_line_args(int argc, const char **arg
> +static void process_input_file(const char *infile,
> + struct trailer_item **infile_tok_first,
> + struct trailer_item **infile_tok_last)
> +{
> + struct strbuf **lines = read_input_file(infile);
> + int start = find_trailer_start(lines);
> + int i;
> +
> + /* Print non trailer lines as is */
> + for (i = 0; lines[i] && i < start; i++) {
> + printf("%s", lines[i]->buf);
> + }
> +
> + /* Parse trailer lines */
> + for (i = start; lines[i]; i++) {
> + struct trailer_item *new = create_trailer_item(lines[i]->buf);
> + add_trailer_item(infile_tok_first, infile_tok_last, new);Leaking 'lines'. Perhaps you want to invoke strbuf_list_free() here.
> + } > +} > -- > 1.8.5.2.201.gacc5987