| To: vim_dev@googlegroups.com |
| Subject: Patch 7.3.606 |
| 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.3.606 |
| Problem: CTRL-P completion has a problem with multi-byte characters. |
| Solution: Check for next character being NUL properly. (Yasuhiro Matsumoto) |
| Files: src/search.c, src/macros.h |
| |
| |
| |
| |
| |
| *** 5141,5147 **** |
| && !(compl_cont_status & CONT_SOL) |
| #endif |
| && *startp != NUL |
| ! && *(p = startp + 1) != NUL) |
| goto search_line; |
| } |
| line_breakcheck(); |
| --- 5141,5147 ---- |
| && !(compl_cont_status & CONT_SOL) |
| #endif |
| && *startp != NUL |
| ! && *(p = startp + MB_PTR2LEN(startp)) != NUL) |
| goto search_line; |
| } |
| line_breakcheck(); |
| |
| |
| |
| *** 259,264 **** |
| --- 259,266 ---- |
| * PTR2CHAR(): get character from pointer. |
| */ |
| #ifdef FEAT_MBYTE |
| + /* Get the length of the character p points to */ |
| + # define MB_PTR2LEN(p) (has_mbyte ? (*mb_ptr2len)(p) : 1) |
| /* Advance multi-byte pointer, skip over composing chars. */ |
| # define mb_ptr_adv(p) p += has_mbyte ? (*mb_ptr2len)(p) : 1 |
| /* Advance multi-byte pointer, do not skip over composing chars. */ |
| |
| *** 272,277 **** |
| --- 274,280 ---- |
| # define MB_CHARLEN(p) (has_mbyte ? mb_charlen(p) : (int)STRLEN(p)) |
| # define PTR2CHAR(p) (has_mbyte ? mb_ptr2char(p) : (int)*(p)) |
| #else |
| + # define MB_PTR2LEN(p) 1 |
| # define mb_ptr_adv(p) ++p |
| # define mb_cptr_adv(p) ++p |
| # define mb_ptr_back(s, p) --p |
| |
| |
| |
| *** 716,717 **** |
| --- 716,719 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 606, |
| /**/ |
| |
| -- |
| hundred-and-one symptoms of being an internet addict: |
| 151. You find yourself engaged to someone you've never actually met, |
| except through e-mail. |
| |
| /// 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 /// |