Karsten Hopp 0960a4
To: vim_dev@googlegroups.com
Karsten Hopp 0960a4
Subject: Patch 7.3.779
Karsten Hopp 0960a4
Fcc: outbox
Karsten Hopp 0960a4
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp 0960a4
Mime-Version: 1.0
Karsten Hopp 0960a4
Content-Type: text/plain; charset=UTF-8
Karsten Hopp 0960a4
Content-Transfer-Encoding: 8bit
Karsten Hopp 0960a4
------------
Karsten Hopp 0960a4
Karsten Hopp 0960a4
Patch 7.3.779
Karsten Hopp 0960a4
Problem:    Backwards search lands in wrong place when started on a multibyte
Karsten Hopp 0960a4
	    character.
Karsten Hopp 0960a4
Solution:   Do not set extra_col for a backwards search. (Sung Pae)
Karsten Hopp 0960a4
Files:	    src/search.c, src/testdir/test44.in, src/testdir/test44.ok
Karsten Hopp 0960a4
Karsten Hopp 0960a4
Karsten Hopp 0960a4
*** ../vim-7.3.778/src/search.c	2013-01-17 17:01:57.000000000 +0100
Karsten Hopp 0960a4
--- src/search.c	2013-01-23 16:27:35.000000000 +0100
Karsten Hopp 0960a4
***************
Karsten Hopp 0960a4
*** 572,578 ****
Karsten Hopp 0960a4
  	extra_col = 0;
Karsten Hopp 0960a4
  #ifdef FEAT_MBYTE
Karsten Hopp 0960a4
      /* Watch out for the "col" being MAXCOL - 2, used in a closed fold. */
Karsten Hopp 0960a4
!     else if (has_mbyte && pos->lnum >= 1 && pos->lnum <= buf->b_ml.ml_line_count
Karsten Hopp 0960a4
  						     && pos->col < MAXCOL - 2)
Karsten Hopp 0960a4
      {
Karsten Hopp 0960a4
  	ptr = ml_get_buf(buf, pos->lnum, FALSE) + pos->col;
Karsten Hopp 0960a4
--- 572,579 ----
Karsten Hopp 0960a4
  	extra_col = 0;
Karsten Hopp 0960a4
  #ifdef FEAT_MBYTE
Karsten Hopp 0960a4
      /* Watch out for the "col" being MAXCOL - 2, used in a closed fold. */
Karsten Hopp 0960a4
!     else if (dir != BACKWARD && has_mbyte
Karsten Hopp 0960a4
! 		    && pos->lnum >= 1 && pos->lnum <= buf->b_ml.ml_line_count
Karsten Hopp 0960a4
  						     && pos->col < MAXCOL - 2)
Karsten Hopp 0960a4
      {
Karsten Hopp 0960a4
  	ptr = ml_get_buf(buf, pos->lnum, FALSE) + pos->col;
Karsten Hopp 0960a4
*** ../vim-7.3.778/src/testdir/test44.in	2011-07-20 17:58:14.000000000 +0200
Karsten Hopp 0960a4
--- src/testdir/test44.in	2013-01-23 16:22:38.000000000 +0100
Karsten Hopp 0960a4
***************
Karsten Hopp 0960a4
*** 29,34 ****
Karsten Hopp 0960a4
--- 29,37 ----
Karsten Hopp 0960a4
  x/\%d21879b
Karsten Hopp 0960a4
  x/ [[=A=]]* [[=B=]]* [[=C=]]* [[=D=]]* [[=E=]]* [[=F=]]* [[=G=]]* [[=H=]]* [[=I=]]* [[=J=]]* [[=K=]]* [[=L=]]* [[=M=]]* [[=N=]]* [[=O=]]* [[=P=]]* [[=Q=]]* [[=R=]]* [[=S=]]* [[=T=]]* [[=U=]]* [[=V=]]* [[=W=]]* [[=X=]]* [[=Y=]]* [[=Z=]]*/e
Karsten Hopp 0960a4
  x/ [[=a=]]* [[=b=]]* [[=c=]]* [[=d=]]* [[=e=]]* [[=f=]]* [[=g=]]* [[=h=]]* [[=i=]]* [[=j=]]* [[=k=]]* [[=l=]]* [[=m=]]* [[=n=]]* [[=o=]]* [[=p=]]* [[=q=]]* [[=r=]]* [[=s=]]* [[=t=]]* [[=u=]]* [[=v=]]* [[=w=]]* [[=x=]]* [[=y=]]* [[=z=]]*/e
Karsten Hopp 0960a4
+ x:" Test backwards search from a multi-byte char
Karsten Hopp 0960a4
+ /x
Karsten Hopp 0960a4
+ x?.
Karsten Hopp 0960a4
  x:?^1?,$w! test.out
Karsten Hopp 0960a4
  :e! test.out
Karsten Hopp 0960a4
  G:put =matchstr(\"אבגד\", \".\", 0, 2) " ב
Karsten Hopp 0960a4
***************
Karsten Hopp 0960a4
*** 57,59 ****
Karsten Hopp 0960a4
--- 60,63 ----
Karsten Hopp 0960a4
  g a啷bb
Karsten Hopp 0960a4
  h AÀÁÂÃÄÅĀĂĄǍǞǠẢ BḂḆ CÇĆĈĊČ DĎĐḊḎḐ EÈÉÊËĒĔĖĘĚẺẼ FḞ GĜĞĠĢǤǦǴḠ HĤĦḢḦḨ IÌÍÎÏĨĪĬĮİǏỈ JĴ KĶǨḰḴ LĹĻĽĿŁḺ MḾṀ NÑŃŅŇṄṈ OÒÓÔÕÖØŌŎŐƠǑǪǬỎ PṔṖ Q RŔŖŘṘṞ SŚŜŞŠṠ TŢŤŦṪṮ UÙÚÛÜŨŪŬŮŰŲƯǓỦ VṼ WŴẀẂẄẆ XẊẌ YÝŶŸẎỲỶỸ ZŹŻŽƵẐẔ
Karsten Hopp 0960a4
  i aàáâãäåāăąǎǟǡả bḃḇ cçćĉċč dďđḋḏḑ eèéêëēĕėęěẻẽ fḟ gĝğġģǥǧǵḡ hĥħḣḧḩẖ iìíîïĩīĭįǐỉ jĵǰ kķǩḱḵ lĺļľŀłḻ mḿṁ nñńņňʼnṅṉ oòóôõöøōŏőơǒǫǭỏ pṕṗ q rŕŗřṙṟ sśŝşšṡ tţťŧṫṯẗ uùúûüũūŭůűųưǔủ vṽ wŵẁẃẅẇẘ xẋẍ yýÿŷẏẙỳỷỹ zźżžƶẑẕ
Karsten Hopp 0960a4
+ j 0123❤x
Karsten Hopp 0960a4
*** ../vim-7.3.778/src/testdir/test44.ok	2011-07-20 17:58:14.000000000 +0200
Karsten Hopp 0960a4
--- src/testdir/test44.ok	2013-01-23 16:22:38.000000000 +0100
Karsten Hopp 0960a4
***************
Karsten Hopp 0960a4
*** 16,21 ****
Karsten Hopp 0960a4
--- 16,22 ----
Karsten Hopp 0960a4
  g abb
Karsten Hopp 0960a4
  h AÀÁÂÃÄÅĀĂĄǍǞǠẢ BḂḆ CÇĆĈĊČ DĎĐḊḎḐ EÈÉÊËĒĔĖĘĚẺẼ FḞ GĜĞĠĢǤǦǴḠ HĤĦḢḦḨ IÌÍÎÏĨĪĬĮİǏỈ JĴ KĶǨḰḴ LĹĻĽĿŁḺ MḾṀ NÑŃŅŇṄṈ OÒÓÔÕÖØŌŎŐƠǑǪǬỎ PṔṖ Q RŔŖŘṘṞ SŚŜŞŠṠ TŢŤŦṪṮ UÙÚÛÜŨŪŬŮŰŲƯǓỦ VṼ WŴẀẂẄẆ XẊẌ YÝŶŸẎỲỶỸ ZŹŻŽƵẐ
Karsten Hopp 0960a4
  i aàáâãäåāăąǎǟǡả bḃḇ cçćĉċč dďđḋḏḑ eèéêëēĕėęěẻẽ fḟ gĝğġģǥǧǵḡ hĥħḣḧḩẖ iìíîïĩīĭįǐỉ jĵǰ kķǩḱḵ lĺļľŀłḻ mḿṁ nñńņňʼnṅṉ oòóôõöøōŏőơǒǫǭỏ pṕṗ q rŕŗřṙṟ sśŝşšṡ tţťŧṫṯẗ uùúûüũūŭůűųưǔủ vṽ wŵẁẃẅẇẘ xẋẍ yýÿŷẏẙỳỷỹ zźżžƶẑ
Karsten Hopp 0960a4
+ j 012❤
Karsten Hopp 0960a4
  ב
Karsten Hopp 0960a4
  בג
Karsten Hopp 0960a4
  א
Karsten Hopp 0960a4
*** ../vim-7.3.778/src/version.c	2013-01-23 16:19:17.000000000 +0100
Karsten Hopp 0960a4
--- src/version.c	2013-01-23 16:39:23.000000000 +0100
Karsten Hopp 0960a4
***************
Karsten Hopp 0960a4
*** 727,728 ****
Karsten Hopp 0960a4
--- 727,730 ----
Karsten Hopp 0960a4
  {   /* Add new patch number below this line */
Karsten Hopp 0960a4
+ /**/
Karsten Hopp 0960a4
+     779,
Karsten Hopp 0960a4
  /**/
Karsten Hopp 0960a4
Karsten Hopp 0960a4
-- 
Karsten Hopp 0960a4
Veni, Vidi, Video -- I came, I saw, I taped what I saw.
Karsten Hopp 0960a4
Karsten Hopp 0960a4
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp 0960a4
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp 0960a4
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp 0960a4
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///