1e9c237
To: vim_dev@googlegroups.com
1e9c237
Subject: Patch 7.4.261
1e9c237
Fcc: outbox
1e9c237
From: Bram Moolenaar <Bram@moolenaar.net>
1e9c237
Mime-Version: 1.0
1e9c237
Content-Type: text/plain; charset=UTF-8
1e9c237
Content-Transfer-Encoding: 8bit
1e9c237
------------
1e9c237
1e9c237
Patch 7.4.261
1e9c237
Problem:    When updating the window involves a regexp pattern, an interactive
1e9c237
	    substitute to replace a "\n" with a line break fails. (Ingo
1e9c237
	    Karkat)
1e9c237
Solution:   Set reg_line_lbr in vim_regsub() and vim_regsub_multi().
1e9c237
Files:	    src/regexp.c, src/testdir/test79.in, src/testdir/test79.ok
1e9c237
1e9c237
1e9c237
*** ../vim-7.4.260/src/regexp.c	2014-04-06 21:33:39.671363743 +0200
1e9c237
--- src/regexp.c	2014-04-23 18:40:37.094866280 +0200
1e9c237
***************
1e9c237
*** 7381,7386 ****
1e9c237
--- 7381,7387 ----
1e9c237
      reg_mmatch = NULL;
1e9c237
      reg_maxline = 0;
1e9c237
      reg_buf = curbuf;
1e9c237
+     reg_line_lbr = TRUE;
1e9c237
      return vim_regsub_both(source, dest, copy, magic, backslash);
1e9c237
  }
1e9c237
  #endif
1e9c237
***************
1e9c237
*** 7400,7405 ****
1e9c237
--- 7401,7407 ----
1e9c237
      reg_buf = curbuf;		/* always works on the current buffer! */
1e9c237
      reg_firstlnum = lnum;
1e9c237
      reg_maxline = curbuf->b_ml.ml_line_count - lnum;
1e9c237
+     reg_line_lbr = FALSE;
1e9c237
      return vim_regsub_both(source, dest, copy, magic, backslash);
1e9c237
  }
1e9c237
  
1e9c237
*** ../vim-7.4.260/src/testdir/test79.in	2014-04-02 19:00:53.043644100 +0200
1e9c237
--- src/testdir/test79.in	2014-04-23 18:36:29.158872254 +0200
1e9c237
***************
1e9c237
*** 1,6 ****
1e9c237
--- 1,7 ----
1e9c237
  Test for *sub-replace-special* and *sub-replace-expression* on :substitute.
1e9c237
  Test for submatch() on :substitue.
1e9c237
  Test for *:s%* on :substitute.
1e9c237
+ Test for :s replacing \n with  line break.
1e9c237
  
1e9c237
  STARTTEST
1e9c237
  :so small.vim
1e9c237
***************
1e9c237
*** 234,239 ****
1e9c237
--- 235,254 ----
1e9c237
  Q
1e9c237
  
1e9c237
  STARTTEST
1e9c237
+ :function! TitleString()
1e9c237
+   let check = 'foo' =~ 'bar'
1e9c237
+   return ""
1e9c237
+ endfunction
1e9c237
+ :set titlestring=%{TitleString()}
1e9c237
+ :/^test_one/s/.*/\="foo\nbar"/
1e9c237
+ :/^test_two/s/.*/\="foo\nbar"/c
1e9c237
+ y
1e9c237
+ ENDTEST
1e9c237
+ 
1e9c237
+ test_one
1e9c237
+ test_two
1e9c237
+ 
1e9c237
+ STARTTEST
1e9c237
  :g/^STARTTEST/.,/^ENDTEST/d
1e9c237
  :1;/^Results/,$wq! test.out
1e9c237
  :call getchar()
1e9c237
*** ../vim-7.4.260/src/testdir/test79.ok	2014-04-02 19:00:53.043644100 +0200
1e9c237
--- src/testdir/test79.ok	2014-04-23 18:35:30.650873664 +0200
1e9c237
***************
1e9c237
*** 126,128 ****
1e9c237
--- 126,134 ----
1e9c237
  Q
1e9c237
  Q
1e9c237
  
1e9c237
+ 
1e9c237
+ foo
1e9c237
+ bar
1e9c237
+ foo
1e9c237
+ bar
1e9c237
+ 
1e9c237
*** ../vim-7.4.260/src/version.c	2014-04-23 17:43:37.366948683 +0200
1e9c237
--- src/version.c	2014-04-23 18:46:45.250857408 +0200
1e9c237
***************
1e9c237
*** 736,737 ****
1e9c237
--- 736,739 ----
1e9c237
  {   /* Add new patch number below this line */
1e9c237
+ /**/
1e9c237
+     261,
1e9c237
  /**/
1e9c237
1e9c237
-- 
1e9c237
From "know your smileys":
1e9c237
 !-|	I-am-a-Cylon-Centurian-with-one-red-eye-bouncing-back-and-forth
1e9c237
1e9c237
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
1e9c237
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
1e9c237
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
1e9c237
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///