Patch 7.4.1967
Problem:    Falling back from NFA to old regexp engine does not work properly.
            (fritzophrenic)
Solution:   Do not restore nfa_match. (Christian Brabandt, closes #867)
Files:      src/regexp_nfa.c, src/testdir/test64.in, src/testdir/test64.ok


*** ../vim-7.4.1966/src/regexp_nfa.c    2016-04-26 21:39:08.227018806 +0200
--- src/regexp_nfa.c    2016-06-28 22:31:58.683733701 +0200
***************
*** 5209,5217 ****
      if (REG_MULTI)
        regline = reg_getline(reglnum);
      reginput = regline + save_reginput_col;
!     nfa_match = save_nfa_match;
      nfa_endp = save_nfa_endp;
-     nfa_listid = save_nfa_listid;
  
  #ifdef ENABLE_LOG
      log_fd = fopen(NFA_REGEXP_RUN_LOG, "a");
--- 5209,5220 ----
      if (REG_MULTI)
        regline = reg_getline(reglnum);
      reginput = regline + save_reginput_col;
!     if (result != NFA_TOO_EXPENSIVE)
!     {
!       nfa_match = save_nfa_match;
!       nfa_listid = save_nfa_listid;
!     }
      nfa_endp = save_nfa_endp;
  
  #ifdef ENABLE_LOG
      log_fd = fopen(NFA_REGEXP_RUN_LOG, "a");
*** ../vim-7.4.1966/src/testdir/test64.in       2015-01-18 16:46:28.983828439 
+0100
--- src/testdir/test64.in       2016-06-28 22:31:41.911894759 +0200
***************
*** 578,584 ****
  :" Check patterns matching cursor position.
  :func! Postest()
   new
!  call setline(1, ['ffooooo', 'boboooo', 'zoooooo', 'koooooo', 'moooooo', 
"\t\t\tfoo", 'abababababababfoo', 'bababababababafoo', '********_'])
   call setpos('.', [0, 1, 0, 0])
   s/\%>3c.//g
   call setpos('.', [0, 2, 4, 0])
--- 578,584 ----
  :" Check patterns matching cursor position.
  :func! Postest()
   new
!  call setline(1, ['ffooooo', 'boboooo', 'zoooooo', 'koooooo', 'moooooo', 
"\t\t\tfoo", 'abababababababfoo', 'bababababababafoo', '********_', '        
xxxxxxxxxxxx    xxxx xxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxx xxxxx xxxxxxx 
xx xxxx xxxxxxxx xxxx xxxxxxxxxxx xxx xxxxxxx xxxxxxxxx xx xxxxxx xx xxxxxxx 
xxxxxxxxxxxxxxxx xxxxxxxxx  xxx xxxxxxxx xxxxxxxxx xxxx xxx xxxx xxx xxx xxxxx 
xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxxxxxxx xx xxxxx xxx xxxxxxxx xxxxxx xxx xxx 
xxxxxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxxx  xxxxxxxxxxxxxxxxxx xxxxxxx 
xxxxxxx xxx xxx xxxxxxxx xxxxxxx  xxxx xxx xxxxxx xxxxx xxxxx xx xxxxxx xxxxxxx 
xxx xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxx xxxxxx xxxxx xxx xxxxxxx 
xxxxxxxxxxxxxxxx xxxxxxxxx  xxxxxxxxxx xxxx xx xxxxxxxx xxx xxxxxxxxxxx xxxxx'])
   call setpos('.', [0, 1, 0, 0])
   s/\%>3c.//g
   call setpos('.', [0, 2, 4, 0])
***************
*** 590,595 ****
--- 590,596 ----
   %s/\%>6l\%3c./!/g
   %s/\%>7l\%12c./?/g
   %s/\%>7l\%<9l\%>5v\%<8v./#/g
+  $s/\%(|\u.*\)\@<=[^|\t]\+$//ge
   1,$yank
   quit!
  endfunc
*** ../vim-7.4.1966/src/testdir/test64.ok       2015-01-18 16:46:28.983828439 
+0100
--- src/testdir/test64.ok       2016-06-28 22:31:41.911894759 +0200
***************
*** 1076,1081 ****
--- 1076,1082 ----
  ab!babababababfoo
  ba!ab##abab?bafoo
  **!*****_
+   !     xxx?xxxxxxxx    xxxx xxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxx 
xxxxx xxxxxxx xx xxxx xxxxxxxx xxxx xxxxxxxxxxx xxx xxxxxxx xxxxxxxxx xx xxxxxx 
xx xxxxxxx xxxxxxxxxxxxxxxx xxxxxxxxx  xxx xxxxxxxx xxxxxxxxx xxxx xxx xxxx xxx 
xxx xxxxx xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxxxxxxx xx xxxxx xxx xxxxxxxx xxxxxx 
xxx xxx xxxxxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxxx  xxxxxxxxxxxxxxxxxx 
xxxxxxx xxxxxxx xxx xxx xxxxxxxx xxxxxxx  xxxx xxx xxxxxx xxxxx xxxxx xx xxxxxx 
xxxxxxx xxx xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxx xxxxxx xxxxx xxx xxxxxxx 
xxxxxxxxxxxxxxxx xxxxxxxxx  xxxxxxxxxx xxxx xx xxxxxxxx xxx xxxxxxxxxxx xxxxx
  -1-
  ffo
  bob
***************
*** 1086,1091 ****
--- 1087,1093 ----
  ab!babababababfoo
  ba!ab##abab?bafoo
  **!*****_
+   !     xxx?xxxxxxxx    xxxx xxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxx 
xxxxx xxxxxxx xx xxxx xxxxxxxx xxxx xxxxxxxxxxx xxx xxxxxxx xxxxxxxxx xx xxxxxx 
xx xxxxxxx xxxxxxxxxxxxxxxx xxxxxxxxx  xxx xxxxxxxx xxxxxxxxx xxxx xxx xxxx xxx 
xxx xxxxx xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxxxxxxx xx xxxxx xxx xxxxxxxx xxxxxx 
xxx xxx xxxxxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxxx  xxxxxxxxxxxxxxxxxx 
xxxxxxx xxxxxxx xxx xxx xxxxxxxx xxxxxxx  xxxx xxx xxxxxx xxxxx xxxxx xx xxxxxx 
xxxxxxx xxx xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxx xxxxxx xxxxx xxx xxxxxxx 
xxxxxxxxxxxxxxxx xxxxxxxxx  xxxxxxxxxx xxxx xx xxxxxxxx xxx xxxxxxxxxxx xxxxx
  -2-
  ffo
  bob
***************
*** 1096,1101 ****
--- 1098,1104 ----
  ab!babababababfoo
  ba!ab##abab?bafoo
  **!*****_
+   !     xxx?xxxxxxxx    xxxx xxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxx 
xxxxx xxxxxxx xx xxxx xxxxxxxx xxxx xxxxxxxxxxx xxx xxxxxxx xxxxxxxxx xx xxxxxx 
xx xxxxxxx xxxxxxxxxxxxxxxx xxxxxxxxx  xxx xxxxxxxx xxxxxxxxx xxxx xxx xxxx xxx 
xxx xxxxx xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxxxxxxx xx xxxxx xxx xxxxxxxx xxxxxx 
xxx xxx xxxxxxxxx xxxxxxx x xxxxxxxxx xx xxxxxx xxxxxxx  xxxxxxxxxxxxxxxxxx 
xxxxxxx xxxxxxx xxx xxx xxxxxxxx xxxxxxx  xxxx xxx xxxxxx xxxxx xxxxx xx xxxxxx 
xxxxxxx xxx xxxxxxxxxxxx xxxx xxxxxxxxx xxxxxx xxxxxx xxxxx xxx xxxxxxx 
xxxxxxxxxxxxxxxx xxxxxxxxx  xxxxxxxxxx xxxx xx xxxxxxxx xxx xxxxxxxxxxx xxxxx
  Test
  Test END
  EN
*** ../vim-7.4.1966/src/version.c       2016-06-28 21:11:17.515791053 +0200
--- src/version.c       2016-06-28 22:32:14.323610732 +0200
***************
*** 755,756 ****
--- 755,758 ----
  {   /* Add new patch number below this line */
+ /**/
+     1967,
  /**/

-- 
If you feel lonely, try schizophrenia.

 /// Bram Moolenaar -- [email protected] -- 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    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui