Re: [PATCH v4 10/17] trailer: if no input file is passed, read from stdin
From: Eric Sunshine <hidden>
Date: 2016-06-15 22:59:47
On Thu, Jan 30, 2014 at 1:49 AM, Christian Couder [off-list ref] wrote:
quoted hunk ↗ jump to hunk
It is simpler and more natural if the "git interpret-trailers" is made a filter as its output already goes to sdtout. Signed-off-by: Christian Couder <redacted> ---diff --git a/trailer.c b/trailer.c index 8681aed..73a65e0 100644 --- a/trailer.c +++ b/trailer.c@@ -464,8 +464,13 @@ static struct strbuf **read_input_file(const char *infile) { struct strbuf sb = STRBUF_INIT; - if (strbuf_read_file(&sb, infile, 0) < 0) - die_errno(_("could not read input file '%s'"), infile); + if (infile) { + if (strbuf_read_file(&sb, infile, 0) < 0) + die_errno(_("could not read input file '%s'"), infile); + } else { + if (strbuf_read(&sb, fileno(stdin), 0) < 0)
strbuf_fread(), perhaps?
quoted hunk ↗ jump to hunk
+ die_errno(_("could not read from stdin")); + } return strbuf_split(&sb, '\n'); }@@ -530,10 +535,8 @@ void process_trailers(const char *infile, int trim_empty, int argc, const char * git_config(git_trailer_config, NULL); - /* Print the non trailer part of infile */ - if (infile) { - process_input_file(infile, &infile_tok_first, &infile_tok_last); - } + /* Print the non trailer part of infile (or stdin if infile is NULL) */ + process_input_file(infile, &infile_tok_first, &infile_tok_last); arg_tok_first = process_command_line_args(argc, argv); --1.8.5.2.201.gacc5987