From: Christian Couder Date: Thu, 06 Feb 2014 20:16:39 GMT Subject: Re: [PATCH v4 10/17] trailer: if no input file is passed, read from stdin Message-ID: <20140206.211639.74249240425700292.chriscool@tuxfamily.org> In-Reply-To: From: Eric Sunshine > > On Thu, Jan 30, 2014 at 1:49 AM, Christian Couder > wrote: >> 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 >> --- >> 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? I chose strbuf_read() because it can be passed 0 as a size hint, while strbuf_fread() must be passed an exact size. (As we might read from stdin, we might not be able to know the exact size before we start reading.) Thanks, Christian.