To:
[email protected]
Subject: Patch 6.2f.036
Fcc: outbox
From: Bram Moolenaar <
[email protected]>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 6.2f.036
Problem: Moving leftwards over text with an illegal UTF-8 byte moves one
byte instead of one character.
Solution: Ignore an illegal byte after the cursor position.
Files: src/mbyte.c
*** ../vim-6.2f.035/src/mbyte.c Fri May 30 21:18:58 2003
--- src/mbyte.c Sat May 31 18:12:56 2003
***************
*** 2242,2249 ****
/* Move q to the first byte of this char. */
while (q > base && (*q & 0xc0) == 0x80)
--q;
! /* Check for illegal sequence. */
! if (utf8len_tab[*q] != (int)(s - q + 1))
return 0;
if (q <= base)
--- 2242,2251 ----
/* Move q to the first byte of this char. */
while (q > base && (*q & 0xc0) == 0x80)
--q;
! /* Check for illegal sequence. Do allow an illegal byte after where we
! * started. */
! if (utf8len_tab[*q] != (int)(s - q + 1)
! && utf8len_tab[*q] != (int)(p - q + 1))
return 0;
if (q <= base)
*** ../vim-6.2f.035/src/version.c Sat May 31 16:45:27 2003
--- src/version.c Sat May 31 18:10:01 2003
***************
*** 632,633 ****
--- 632,635 ----
{ /* Add new patch number below this line */
+ /**/
+ 36,
/**/
--
Everyone has a photographic memory. Some don't have film.
/// Bram Moolenaar --
[email protected] --
http://www.Moolenaar.net \\\
/// Creator of Vim - Vi IMproved --
http://www.Vim.org \\\
\\\ Project leader for A-A-P --
http://www.A-A-P.org ///
\\\ Help AIDS victims, buy at Amazon --
http://ICCF.nl/click1.html ///