home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / patches / 6.1.096 < prev    next >
Encoding:
Internet Message Format  |  2002-06-17  |  2.4 KB

  1. To: vim-dev@vim.org
  2. Subject: Patch 6.1.096
  3. Fcc: outbox
  4. From: Bram Moolenaar <Bram@moolenaar.net>
  5. MIME-Version: 1.0
  6. Content-Type: text/plain; charset=ISO-8859-1
  7. Content-Transfer-Encoding: 8bit
  8. ------------
  9.  
  10. Patch 6.1.096
  11. Problem:    When erasing the right halve of a double-byte character, it may
  12.         cause further characters to be erased. (Yasuhiro Matsumoto)
  13. Solution:   Make sure only one character is erased.
  14. Files:        src/screen.c
  15.  
  16.  
  17. *** ../vim61.095/src/screen.c    Sat May 11 20:59:21 2002
  18. --- src/screen.c    Sun Jun  9 16:45:36 2002
  19. ***************
  20. *** 5176,5183 ****
  21.           /* When at the end of the text and overwriting a two-cell
  22.            * character with a one-cell character, need to clear the next
  23.            * cell.  Also when overwriting the left halve of a two-cell
  24. !          * char with the right halve of a two-cell char. */
  25. !         if (has_mbyte && ptr[mbyte_blen] == NUL
  26.               && ((mbyte_cells == 1 && (*mb_off2cells)(off) > 1)
  27.                   || (mbyte_cells == 2
  28.                   && (*mb_off2cells)(off) == 1
  29. --- 5181,5191 ----
  30.           /* When at the end of the text and overwriting a two-cell
  31.            * character with a one-cell character, need to clear the next
  32.            * cell.  Also when overwriting the left halve of a two-cell
  33. !          * char with the right halve of a two-cell char.  Do this only
  34. !          * once (mb_off2cells() may return 2 on the right halve). */
  35. !         if (clear_next_cell)
  36. !             clear_next_cell = FALSE;
  37. !         else if (has_mbyte && ptr[mbyte_blen] == NUL
  38.               && ((mbyte_cells == 1 && (*mb_off2cells)(off) > 1)
  39.                   || (mbyte_cells == 2
  40.                   && (*mb_off2cells)(off) == 1
  41. ***************
  42. *** 5226,5235 ****
  43.           col += mbyte_cells;
  44.           ptr += mbyte_blen;
  45.           if (clear_next_cell)
  46. -         {
  47.               ptr = (char_u *)" ";
  48. -             clear_next_cell = FALSE;
  49. -         }
  50.           }
  51.           else
  52.   #endif
  53. --- 5234,5240 ----
  54. *** ../vim61.095/src/version.c    Thu Jun 13 19:43:03 2002
  55. --- src/version.c    Tue Jun 18 20:06:45 2002
  56. ***************
  57. *** 608,609 ****
  58. --- 608,611 ----
  59.   {   /* Add new patch number below this line */
  60. + /**/
  61. +     96,
  62.   /**/
  63.  
  64. -- 
  65. If VIM were a woman, I'd marry her.  Slim, organized, helpful
  66. and beautiful; what's not to like?     --David A. Rogers
  67.  
  68.  ///  Bram Moolenaar -- Bram@moolenaar.net -- http://www.moolenaar.net  \\\
  69. ///   Creator of Vim -- http://vim.sf.net -- ftp://ftp.vim.org/pub/vim   \\\
  70. \\\           Project leader for A-A-P -- http://www.a-a-p.org           ///
  71.  \\\  Help me helping AIDS orphans in Uganda - http://iccf-holland.org  ///
  72.