On 2020-06-19 11:04:43-0400, randall.s.becker@xxxxxxxxxx wrote: > From: "Randall S. Becker" <rsbecker@xxxxxxxxxxxxx> > > The strbuf_write_fd method did not provide checks for buffers larger > than MAX_IO_SIZE. Replacing with write_in_full ensures the entire > buffer will always be written to disk or report an error and die. > > Signed-off-by: Randall S. Becker <rsbecker@xxxxxxxxxxxxx> > --- > bugreport.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/bugreport.c b/bugreport.c > index aa8a489c35..bc359b7fa8 100644 > --- a/bugreport.c > +++ b/bugreport.c > @@ -174,7 +174,10 @@ int cmd_main(int argc, const char **argv) > die(_("couldn't create a new file at '%s'"), report_path.buf); > } > > - strbuf_write_fd(&buffer, report); > + if (write_in_full(report, buffer.buf, buffer.len) < 0) { > + die(_("couldn't write report contents '%s' to file '%s'"), > + buffer.buf, report_path.buf); Doesn't this dump the whole report to the stderr? If it's the case, the error would be very hard to grasp. Nit: We wouldn't want the pair of {}. > + } > close(report); > > /* > -- > 2.21.0 > -- Danh