summaryrefslogtreecommitdiff
path: root/wrapper.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2015-08-24 09:39:48 -0700
committerJunio C Hamano <gitster@pobox.com>2015-08-25 12:48:39 -0700
commite7ffa38c6e726e8014b76297b06f78e008deb2d0 (patch)
tree23d35822320860fab73be8a70d75e5ba19067831 /wrapper.c
parent12d6ce1dba504dfc5279b8d24da3edb4865c2820 (diff)
downloadgit-e7ffa38c6e726e8014b76297b06f78e008deb2d0.tar.gz
write_file_v(): do not leave incomplete line at the end
All existing callers to this function use it to produce a text file or an empty file, and a new callsite that mimick them must end their payload with a LF. If they forget to do so, the resulting file will end with an incomplete line. Teach write_file_v() to complete the incomplete line, if exists, so that the callers do not have to. With this, the caller-side fix in builtin/am.c becomes unnecessary. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'wrapper.c')
-rw-r--r--wrapper.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/wrapper.c b/wrapper.c
index 8c8925b72a..0e22d43814 100644
--- a/wrapper.c
+++ b/wrapper.c
@@ -632,6 +632,7 @@ static int write_file_v(const char *path, int fatal,
return -1;
}
strbuf_vaddf(&sb, fmt, params);
+ strbuf_complete_line(&sb);
if (write_in_full(fd, sb.buf, sb.len) != sb.len) {
int err = errno;
close(fd);