summaryrefslogtreecommitdiff
path: root/src/os_unix.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-07-17 14:18:08 +0200
committerBram Moolenaar <Bram@vim.org>2015-07-17 14:18:08 +0200
commit34d72d4b6c1a2b04a214d8a49b7d22c97bc7a8bc (patch)
tree82675f2f5f49bcb04e8271de9fefee41b3c2ec19 /src/os_unix.c
parent2cf6938706ebcd20e4b4a6723f5f70568b26b1c6 (diff)
downloadvim-34d72d4b6c1a2b04a214d8a49b7d22c97bc7a8bc.zip
patch 7.4.785
Problem: On some systems automatically adding the missing EOL causes problems. Setting 'binary' has too many side effects. Solution: Add the 'fixeol' option, default on. (Pavel Samarkin)
Diffstat (limited to 'src/os_unix.c')
-rw-r--r--src/os_unix.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/os_unix.c b/src/os_unix.c
index 57c013f50..f53faa35a 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -4624,7 +4624,8 @@ mch_call_shell(cmd, options)
/* Finished a line, add a NL, unless this line
* should not have one. */
if (lnum != curbuf->b_op_end.lnum
- || !curbuf->b_p_bin
+ || (!curbuf->b_p_bin
+ && curbuf->b_p_fixeol)
|| (lnum != curbuf->b_no_eol_lnum
&& (lnum !=
curbuf->b_ml.ml_line_count