summaryrefslogtreecommitdiff
path: root/src/memline.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2004-07-26 12:53:41 +0000
committerBram Moolenaar <Bram@vim.org>2004-07-26 12:53:41 +0000
commit5eb86f91992f5291b8b472d3e1be1888508777e6 (patch)
tree15dcd4c748c38e99951e79d02eb1b93f3a6d3db9 /src/memline.c
parent89cb5e0f646970371359c70927bf3a0cdaf47f27 (diff)
downloadvim-git-5eb86f91992f5291b8b472d3e1be1888508777e6.tar.gz
updated for version 7.0012v7.0012
Diffstat (limited to 'src/memline.c')
-rw-r--r--src/memline.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/memline.c b/src/memline.c
index 176705392..67d233b9e 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -4338,8 +4338,17 @@ ml_find_line_or_offset(buf, line, offp)
curline = buf->b_ml.ml_locked_high + 1;
}
- if (ffdos)
- size += line - 1;
+ if (line != 0)
+ {
+ /* Count extra CR characters. */
+ if (ffdos)
+ size += line - 1;
+
+ /* Don't count the last line break if 'bin' and 'noeol'. */
+ if (buf->b_p_bin && !buf->b_p_eol)
+ size -= ffdos + 1;
+ }
+
return size;
}