summaryrefslogtreecommitdiff
path: root/src/misc1.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/misc1.c')
-rw-r--r--src/misc1.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/misc1.c b/src/misc1.c
index 958163178..11f456b80 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -10887,7 +10887,14 @@ get_cmd_output(cmd, infile, flags)
buffer = NULL;
}
else
+ {
+ /* Change NUL into SOH, otherwise the string is truncated. */
+ for (i = 0; i < len; ++i)
+ if (buffer[len] == NUL)
+ buffer[len] = 1;
+
buffer[len] = NUL; /* make sure the buffer is terminated */
+ }
done:
vim_free(tempname);