Re: [PATCHv15 2/5] run_processes_parallel: add LF when caller is sloppy
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:08:25
Stefan Beller [off-list ref] writes:
On Wed, Feb 24, 2016 at 12:07 PM, Junio C Hamano [off-list ref] wrote:quoted
The inconsistency may not hurt as long as (1) the producers of the message will never stuff a NUL in the middle, and (2) strbuf always has the guard NUL after its contents. Even though we know that the latter will hold true for the foreseeable future, it also is easy to do the right thing here, too, so why not?What is the right thing? I asked myself and obviously it is treating the child->err the same in both cases of checking for a trailing LF and when outputting. But what is the right way to look at child->err? I would argue that we should allow for children to have a NUL in its output stream and replay their output as literal as possible. i.e. my conclusion is to replace the fputs by fwrite as opposed to using strlen to determine the length of string output.
Yup, that is what I meant; sorry if I were too oblique. There are two fputs() that assumes there is no embedded NUL around there, by the way. Thanks.