e4c1a5a
To: vim-dev@vim.org
e4c1a5a
Subject: Patch 7.1.164
e4c1a5a
Fcc: outbox
e4c1a5a
From: Bram Moolenaar <Bram@moolenaar.net>
e4c1a5a
Mime-Version: 1.0
e4c1a5a
Content-Type: text/plain; charset=ISO-8859-1
e4c1a5a
Content-Transfer-Encoding: 8bit
e4c1a5a
------------
e4c1a5a
e4c1a5a
Patch 7.1.164
e4c1a5a
Problem:    Reading past end of regexp pattern. (Dominique Pelle)
e4c1a5a
Solution:   Use utf_ptr2len().
e4c1a5a
Files:	    src/regexp.c
e4c1a5a
e4c1a5a
e4c1a5a
*** ../vim-7.1.163/src/regexp.c	Sat Aug 11 13:57:31 2007
e4c1a5a
--- src/regexp.c	Sat Nov 24 13:23:53 2007
e4c1a5a
***************
e4c1a5a
*** 2770,2776 ****
e4c1a5a
      {
e4c1a5a
  #ifdef FEAT_MBYTE
e4c1a5a
  	if (enc_utf8)
e4c1a5a
! 	    prevchr_len += utf_char2len(mb_ptr2char(regparse + prevchr_len));
e4c1a5a
  	else if (has_mbyte)
e4c1a5a
  	    prevchr_len += (*mb_ptr2len)(regparse + prevchr_len);
e4c1a5a
  	else
e4c1a5a
--- 2770,2777 ----
e4c1a5a
      {
e4c1a5a
  #ifdef FEAT_MBYTE
e4c1a5a
  	if (enc_utf8)
e4c1a5a
! 	    /* exclude composing chars that mb_ptr2len does include */
e4c1a5a
! 	    prevchr_len += utf_ptr2len(regparse + prevchr_len);
e4c1a5a
  	else if (has_mbyte)
e4c1a5a
  	    prevchr_len += (*mb_ptr2len)(regparse + prevchr_len);
e4c1a5a
  	else
e4c1a5a
*** ../vim-7.1.163/src/version.c	Thu Nov 29 17:46:01 2007
e4c1a5a
--- src/version.c	Thu Nov 29 21:25:45 2007
e4c1a5a
***************
e4c1a5a
*** 668,669 ****
e4c1a5a
--- 668,671 ----
e4c1a5a
  {   /* Add new patch number below this line */
e4c1a5a
+ /**/
e4c1a5a
+     164,
e4c1a5a
  /**/
e4c1a5a
e4c1a5a
-- 
e4c1a5a
Send $25.00 for handy leaflet on how to make money by selling leaflets
e4c1a5a
e4c1a5a
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
e4c1a5a
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
e4c1a5a
\\\        download, build and distribute -- http://www.A-A-P.org        ///
e4c1a5a
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///