From: Bram Moolenaar Date: Sun, 5 Aug 2007 16:33:12 +0000 (+0000) Subject: updated for version 7.1-051 X-Git-Tag: v7.1.051 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3dcfbf7c4da5f576671c436bc64ce344a6267f71;p=vim updated for version 7.1-051 --- diff --git a/src/spell.c b/src/spell.c index a4c681172..ce887f749 100644 --- a/src/spell.c +++ b/src/spell.c @@ -12182,7 +12182,9 @@ suggest_trie_walk(su, lp, fword, soundfold) { n = mb_cptr2len(p); c = mb_ptr2char(p); - if (!soundfold && !spell_iswordp(p + n, curbuf)) + if (p[n] == NUL) + c2 = NUL; + else if (!soundfold && !spell_iswordp(p + n, curbuf)) c2 = c; /* don't swap non-word char */ else c2 = mb_ptr2char(p + n); @@ -12190,12 +12192,21 @@ suggest_trie_walk(su, lp, fword, soundfold) else #endif { - if (!soundfold && !spell_iswordp(p + 1, curbuf)) + if (p[1] == NUL) + c2 = NUL; + else if (!soundfold && !spell_iswordp(p + 1, curbuf)) c2 = c; /* don't swap non-word char */ else c2 = p[1]; } + /* When the second character is NUL we can't swap. */ + if (c2 == NUL) + { + sp->ts_state = STATE_REP_INI; + break; + } + /* When characters are identical, swap won't do anything. * Also get here if the second char is not a word character. */ if (c == c2) diff --git a/src/version.c b/src/version.c index 95f2a4fa4..a8edba471 100644 --- a/src/version.c +++ b/src/version.c @@ -666,6 +666,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 51, /**/ 50, /**/