aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/memline.c
diff options
context:
space:
mode:
authorJohan Klokkhammer Helsing <johanhelsing@gmail.com>2015-10-08 20:17:25 +0200
committerJohan Klokkhammer Helsing <johanhelsing@gmail.com>2015-11-22 20:03:41 +0100
commita86d4b323e2f5ee9fec791ca1dcce7a608de575d (patch)
tree21996ffb28447451e04977703a434767cf437ec3 /src/nvim/memline.c
parent1fbb56795d16783f9a97e25e3b71ab3ac2a644dc (diff)
downloadrneovim-a86d4b323e2f5ee9fec791ca1dcce7a608de575d.tar.gz
rneovim-a86d4b323e2f5ee9fec791ca1dcce7a608de575d.tar.bz2
rneovim-a86d4b323e2f5ee9fec791ca1dcce7a608de575d.zip
vim-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) https://github.com/vim/vim/commit/34d72d4b6c1a2b04a214d8a49b7d22c97bc7a8bc
Diffstat (limited to 'src/nvim/memline.c')
-rw-r--r--src/nvim/memline.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/nvim/memline.c b/src/nvim/memline.c
index 85f545f960..605deb6b03 100644
--- a/src/nvim/memline.c
+++ b/src/nvim/memline.c
@@ -3962,8 +3962,10 @@ long ml_find_line_or_offset(buf_T *buf, linenr_T lnum, long *offp)
if (ffdos)
size += lnum - 1;
- /* Don't count the last line break if 'bin' and 'noeol'. */
- if (buf->b_p_bin && !buf->b_p_eol && buf->b_ml.ml_line_count == lnum) {
+ /* Don't count the last line break if 'noeol' and ('bin' or
+ * 'nofixeol'). */
+ if ((!buf->b_p_fixeol || buf->b_p_bin) && !buf->b_p_eol
+ && buf->b_ml.ml_line_count == lnum) {
size -= ffdos + 1;
}
}