Karsten Hopp e388b8
To: vim_dev@googlegroups.com
Karsten Hopp e388b8
Subject: Patch 7.3.1185
Karsten Hopp e388b8
Fcc: outbox
Karsten Hopp e388b8
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp e388b8
Mime-Version: 1.0
Karsten Hopp e388b8
Content-Type: text/plain; charset=UTF-8
Karsten Hopp e388b8
Content-Transfer-Encoding: 8bit
Karsten Hopp e388b8
------------
Karsten Hopp e388b8
Karsten Hopp e388b8
Patch 7.3.1185
Karsten Hopp e388b8
Problem:    New regexp engine: no match with ^ after \n. (SungHyun Nam)
Karsten Hopp e388b8
Solution:   Fix it, add a test.
Karsten Hopp e388b8
Files:	    src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok
Karsten Hopp e388b8
Karsten Hopp e388b8
Karsten Hopp e388b8
*** ../vim-7.3.1184/src/regexp_nfa.c	2013-06-13 19:47:03.000000000 +0200
Karsten Hopp e388b8
--- src/regexp_nfa.c	2013-06-13 20:10:23.000000000 +0200
Karsten Hopp e388b8
***************
Karsten Hopp e388b8
*** 3936,3944 ****
Karsten Hopp e388b8
  	case NFA_BOL:
Karsten Hopp e388b8
  	case NFA_BOF:
Karsten Hopp e388b8
  	    /* "^" won't match past end-of-line, don't bother trying.
Karsten Hopp e388b8
! 	     * Except when we are going to the next line for a look-behind
Karsten Hopp e388b8
! 	     * match. */
Karsten Hopp e388b8
  	    if (reginput > regline
Karsten Hopp e388b8
  		    && (nfa_endp == NULL
Karsten Hopp e388b8
  			|| !REG_MULTI
Karsten Hopp e388b8
  			|| reglnum == nfa_endp->se_u.pos.lnum))
Karsten Hopp e388b8
--- 3936,3945 ----
Karsten Hopp e388b8
  	case NFA_BOL:
Karsten Hopp e388b8
  	case NFA_BOF:
Karsten Hopp e388b8
  	    /* "^" won't match past end-of-line, don't bother trying.
Karsten Hopp e388b8
! 	     * Except when at the end of the line, or when we are going to the
Karsten Hopp e388b8
! 	     * next line for a look-behind match. */
Karsten Hopp e388b8
  	    if (reginput > regline
Karsten Hopp e388b8
+ 		    && *reginput != NUL
Karsten Hopp e388b8
  		    && (nfa_endp == NULL
Karsten Hopp e388b8
  			|| !REG_MULTI
Karsten Hopp e388b8
  			|| reglnum == nfa_endp->se_u.pos.lnum))
Karsten Hopp e388b8
*** ../vim-7.3.1184/src/testdir/test64.in	2013-06-10 16:35:11.000000000 +0200
Karsten Hopp e388b8
--- src/testdir/test64.in	2013-06-13 20:01:36.000000000 +0200
Karsten Hopp e388b8
***************
Karsten Hopp e388b8
*** 480,485 ****
Karsten Hopp e388b8
--- 480,491 ----
Karsten Hopp e388b8
  :.yank
Karsten Hopp e388b8
  y$Go?p:"
Karsten Hopp e388b8
  :"
Karsten Hopp e388b8
+ :" Check a pattern with a line break and ^ and $
Karsten Hopp e388b8
+ /^Abc:
Karsten Hopp e388b8
+ /a\n^b$\n^c/e
Karsten Hopp e388b8
+ :.yank
Karsten Hopp e388b8
+ Go?p:"
Karsten Hopp e388b8
+ :"
Karsten Hopp e388b8
  :" Check a pattern with a look beind crossing a line boundary
Karsten Hopp e388b8
  /^Behind:
Karsten Hopp e388b8
  /\(<\_[xy]\+\)\@3<=start
Karsten Hopp e388b8
***************
Karsten Hopp e388b8
*** 555,560 ****
Karsten Hopp e388b8
--- 561,571 ----
Karsten Hopp e388b8
  xjk
Karsten Hopp e388b8
  lmn
Karsten Hopp e388b8
  
Karsten Hopp e388b8
+ Abc:
Karsten Hopp e388b8
+ a
Karsten Hopp e388b8
+ b
Karsten Hopp e388b8
+ c
Karsten Hopp e388b8
+ 
Karsten Hopp e388b8
  Behind:
Karsten Hopp e388b8
  asdfasd
Karsten Hopp e388b8
  xxstart1
Karsten Hopp e388b8
*** ../vim-7.3.1184/src/testdir/test64.ok	2013-06-10 16:35:11.000000000 +0200
Karsten Hopp e388b8
--- src/testdir/test64.ok	2013-06-13 20:01:34.000000000 +0200
Karsten Hopp e388b8
***************
Karsten Hopp e388b8
*** 918,923 ****
Karsten Hopp e388b8
--- 918,925 ----
Karsten Hopp e388b8
  <T="7">Ac 7</Title>
Karsten Hopp e388b8
  ghi
Karsten Hopp e388b8
  
Karsten Hopp e388b8
+ c
Karsten Hopp e388b8
+ 
Karsten Hopp e388b8
  xxstart3
Karsten Hopp e388b8
  
Karsten Hopp e388b8
  thexE thE thExethe
Karsten Hopp e388b8
*** ../vim-7.3.1184/src/version.c	2013-06-13 19:47:03.000000000 +0200
Karsten Hopp e388b8
--- src/version.c	2013-06-13 20:11:36.000000000 +0200
Karsten Hopp e388b8
***************
Karsten Hopp e388b8
*** 730,731 ****
Karsten Hopp e388b8
--- 730,733 ----
Karsten Hopp e388b8
  {   /* Add new patch number below this line */
Karsten Hopp e388b8
+ /**/
Karsten Hopp e388b8
+     1185,
Karsten Hopp e388b8
  /**/
Karsten Hopp e388b8
Karsten Hopp e388b8
-- 
Karsten Hopp e388b8
hundred-and-one symptoms of being an internet addict:
Karsten Hopp e388b8
185. You order fast food over the Internet
Karsten Hopp e388b8
Karsten Hopp e388b8
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp e388b8
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp e388b8
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp e388b8
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///