summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Randall S. Becker <randall.becker@nexbridge.ca>2020-06-19 16:23:19 -0400
committerLibravatar Junio C Hamano <gitster@pobox.com>2020-06-19 13:50:25 -0700
commitf64b6a1f750e65ca90435f714d9350493aad836d (patch)
tree5bc7af71247250e2ed8400e8b21cceb3a9bc76d1
parentgit-bugreport.txt: adjust reference to strftime(3) (diff)
downloadtgif-f64b6a1f750e65ca90435f714d9350493aad836d.tar.xz
bugreport.c: replace strbuf_write_fd with write_in_full
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@nexbridge.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--bugreport.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/bugreport.c b/bugreport.c
index acacca8fef..0cc71dcc6f 100644
--- a/bugreport.c
+++ b/bugreport.c
@@ -122,7 +122,9 @@ 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_errno(_("unable to write to %s"), report_path.buf);
+
close(report);
/*