Mercurial > vim
changeset 6787:5caf46fd6e24 v7.4.715
patch 7.4.715
Problem: Invalid memory access when there are illegal bytes.
Solution: Get the length from the text, not from the character. (Dominique
Pelle)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Mon, 04 May 2015 10:33:15 +0200 |
parents | 51fbaeb82b0b |
children | 6ea30831ef74 |
files | src/regexp_nfa.c src/version.c |
diffstat | 2 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/regexp_nfa.c +++ b/src/regexp_nfa.c @@ -6602,7 +6602,7 @@ nfa_regmatch(prog, start, submatch, m) /* If ireg_icombine is not set only skip over the character * itself. When it is set skip over composing characters. */ if (result && enc_utf8 && !ireg_icombine) - clen = utf_char2len(curc); + clen = utf_ptr2len(reginput); #endif ADD_STATE_IF_MATCH(t->state); break;