Mercurial > vim
changeset 5349:73cc7272de5e v7.4.027
updated for version 7.4.027
Problem: Another valgrind error when using CTRL-X CTRL-F at the start of
the line. (Dominique Pelle)
Solution: Don't call mb_ptr_back() at the start of the line. Add a test.
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Sun, 08 Sep 2013 20:00:48 +0200 |
parents | dfdc81191d2e |
children | a83960ec9e6d |
files | src/edit.c src/testdir/test32.in src/version.c |
diffstat | 3 files changed, 16 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/edit.c +++ b/src/edit.c @@ -5183,15 +5183,19 @@ ins_complete(c) } else if (ctrl_x_mode == CTRL_X_FILES) { - char_u *p = line + startcol; - /* Go back to just before the first filename character. */ - mb_ptr_back(line, p); - while (p > line && vim_isfilec(PTR2CHAR(p))) + if (startcol > 0) + { + char_u *p = line + startcol; + mb_ptr_back(line, p); - startcol = (int)(p - line) + 1; - if (p == line && vim_isfilec(PTR2CHAR(p))) - startcol = 0; + while (p > line && vim_isfilec(PTR2CHAR(p))) + mb_ptr_back(line, p); + if (p == line && vim_isfilec(PTR2CHAR(p))) + startcol = 0; + else + startcol = (int)(p - line) + 1; + } compl_col += startcol; compl_length = (int)curs_col - startcol;