mirror of
https://github.com/neovim/neovim.git
synced 2025-10-05 01:16:31 +00:00
vim-patch:partial:9.0.0013: reproducing memory access errors can be difficult
Problem: Reproducing memory access errors can be difficult.
Solution: When testing, copy each line to allocated memory, so that valgrind
can detect accessing memory before and/or after it. Fix uncovered
problems.
fa4873ccfc
Since test_override() is N/A, enable ml_get_alloc_lines when ASAN is
enabled instead, so it also applies to functional tests.
Use xstrdup() to copy the line as ml_line_len looks hard to port.
Squash the test changes from patch 9.0.0016.
Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
@@ -1162,12 +1162,16 @@ int open_line(int dir, int flags, int second_line_indent, bool *did_do_comment)
|
||||
if (p[0] == '/' && p[-1] == '*') {
|
||||
// End of C comment, indent should line up
|
||||
// with the line containing the start of
|
||||
// the comment
|
||||
// the comment.
|
||||
curwin->w_cursor.col = (colnr_T)(p - ptr);
|
||||
if ((pos = findmatch(NULL, NUL)) != NULL) {
|
||||
curwin->w_cursor.lnum = pos->lnum;
|
||||
newindent = get_indent();
|
||||
break;
|
||||
}
|
||||
// this may make "ptr" invalid, get it again
|
||||
ptr = ml_get(curwin->w_cursor.lnum);
|
||||
p = ptr + curwin->w_cursor.col;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user