| To: vim_dev@googlegroups.com |
| Subject: Patch 7.4.102 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.4.102 |
| Problem: Crash when interrupting "z=". |
| Solution: Add safety check for word length. (Christian Brabandt, Dominique |
| Pelle) |
| Files: src/spell.c |
| |
| |
| |
| |
| |
| *** 13398,13406 **** |
| |
| /* Lookup the word "orgnr" one of the two tries. */ |
| n = 0; |
| - wlen = 0; |
| wordcount = 0; |
| ! for (;;) |
| { |
| i = 1; |
| if (wordcount == orgnr && byts[n + 1] == NUL) |
| --- 13398,13405 ---- |
| |
| /* Lookup the word "orgnr" one of the two tries. */ |
| n = 0; |
| wordcount = 0; |
| ! for (wlen = 0; wlen < MAXWLEN - 3; ++wlen) |
| { |
| i = 1; |
| if (wordcount == orgnr && byts[n + 1] == NUL) |
| |
| *** 13414,13419 **** |
| --- 13413,13419 ---- |
| if (i > byts[n]) /* safety check */ |
| { |
| STRCPY(theword + wlen, "BAD"); |
| + wlen += 3; |
| goto badword; |
| } |
| |
| |
| *** 13426,13432 **** |
| wordcount += wc; |
| } |
| |
| ! theword[wlen++] = byts[n + i]; |
| n = idxs[n + i]; |
| } |
| badword: |
| --- 13426,13432 ---- |
| wordcount += wc; |
| } |
| |
| ! theword[wlen] = byts[n + i]; |
| n = idxs[n + i]; |
| } |
| badword: |
| |
| |
| |
| *** 740,741 **** |
| --- 740,743 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 102, |
| /**/ |
| |
| -- |
| Engineers will go without food and hygiene for days to solve a problem. |
| (Other times just because they forgot.) |
| (Scott Adams - The Dilbert principle) |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |