r913 - in /trunk/packages/vim: debian/README debian/changelog upstream/patches/7.0.192 upstream/patches/7.0.193 upstream/patches/7.0.194 upstream/patches/7.0.195

jamessan at users.alioth.debian.org jamessan at users.alioth.debian.org
Tue Feb 13 15:41:39 UTC 2007


Author: jamessan
Date: Tue Feb 13 16:41:39 2007
New Revision: 913

URL: http://svn.debian.org/wsvn/pkg-vim/?sc=1&rev=913
Log:
Upstream patches 192 - 195

Added:
    trunk/packages/vim/upstream/patches/7.0.192
    trunk/packages/vim/upstream/patches/7.0.193
    trunk/packages/vim/upstream/patches/7.0.194
    trunk/packages/vim/upstream/patches/7.0.195
Modified:
    trunk/packages/vim/debian/README
    trunk/packages/vim/debian/changelog

Modified: trunk/packages/vim/debian/README
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/debian/README?rev=913&op=diff
==============================================================================
--- trunk/packages/vim/debian/README (original)
+++ trunk/packages/vim/debian/README Tue Feb 13 16:41:39 2007
@@ -221,3 +221,7 @@
   2290  7.0.189  translated message about finding matches is truncated
   1778  7.0.190  "syntax spell default" results in an error message
  10918  7.0.191  the items used by getqflist() and setqflist() don't match
+  5114  7.0.192  ml_get errors when resetting 'swapfile' in empty file
+  1599  7.0.193  crash when using --remote with arg matching 'wildignore'
+  2701  7.0.194  ml_get errors may be given in a recursive loop
+  2677  7.0.195  endless loop for conversion error when auto-writing

Modified: trunk/packages/vim/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/debian/changelog?rev=913&op=diff
==============================================================================
--- trunk/packages/vim/debian/changelog (original)
+++ trunk/packages/vim/debian/changelog Tue Feb 13 16:41:39 2007
@@ -1,7 +1,7 @@
-vim (1:7.0-191+1) UNRELEASED; urgency=low
+vim (1:7.0-195+1) UNRELEASED; urgency=low
 
   [ Debian Vim Maintainers ]
-  * New upstream patches (165 - 191), see README.gz for details.
+  * New upstream patches (165 - 195), see README.gz for details.
 
   [ Stefano Zacchiroli ]
   * vim-addons support:
@@ -15,7 +15,7 @@
   * Fix the handling of alternatives which pointed at the stale alternative so
     the alternative isn't changed from auto to manual.
 
- -- James Vega <jamessan at debian.org>  Mon,  5 Feb 2007 15:02:55 -0500
+ -- James Vega <jamessan at debian.org>  Tue, 13 Feb 2007 10:33:48 -0500
 
 vim (1:7.0-164+3) unstable; urgency=low
 

Added: trunk/packages/vim/upstream/patches/7.0.192
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.192?rev=913&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.192 (added)
+++ trunk/packages/vim/upstream/patches/7.0.192 Tue Feb 13 16:41:39 2007
@@ -1,0 +1,158 @@
+To: vim-dev at vim.org
+Subject: patch 7.0.192
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.192
+Problem:    When 'swapfile' is switched off in an empty file it is possible
+            that not all blocks are loaded into memory, causing ml_get errors
+            later.
+Solution:   Rename "dont_release" to "mf_dont_release" and also use it to
+            avoid using the cached line and locked block. 
+Files:      src/globals.h, src/memfile.c, src/memline.c
+
+
+*** ../vim-7.0.191/src/globals.h	Tue Jan  9 15:15:36 2007
+--- src/globals.h	Wed Feb  7 03:29:52 2007
+***************
+*** 554,559 ****
+--- 554,563 ----
+  EXTERN buf_T	*firstbuf INIT(= NULL);	/* first buffer */
+  EXTERN buf_T	*lastbuf INIT(= NULL);	/* last buffer */
+  EXTERN buf_T	*curbuf INIT(= NULL);	/* currently active buffer */
++ 
++ /* Flag that is set when switching off 'swapfile'.  It means that all blocks
++  * are to be loaded into memory.  Shouldn't be global... */
++ EXTERN int	mf_dont_release INIT(= FALSE);	/* don't release blocks */
+  
+  /*
+   * List of files being edited (global argument list).  curwin->w_alist points
+*** ../vim-7.0.191/src/memfile.c	Tue Nov  7 18:02:19 2006
+--- src/memfile.c	Wed Feb  7 03:22:11 2007
+***************
+*** 76,82 ****
+  #define MEMFILE_PAGE_SIZE 4096		/* default page size */
+  
+  static long_u	total_mem_used = 0;	/* total memory used for memfiles */
+- static int	dont_release = FALSE;	/* don't release blocks */
+  
+  static void mf_ins_hash __ARGS((memfile_T *, bhdr_T *));
+  static void mf_rem_hash __ARGS((memfile_T *, bhdr_T *));
+--- 76,81 ----
+***************
+*** 279,288 ****
+      if (getlines)
+      {
+  	/* get all blocks in memory by accessing all lines (clumsy!) */
+! 	dont_release = TRUE;
+  	for (lnum = 1; lnum <= buf->b_ml.ml_line_count; ++lnum)
+  	    (void)ml_get_buf(buf, lnum, FALSE);
+! 	dont_release = FALSE;
+  	/* TODO: should check if all blocks are really in core */
+      }
+  
+--- 278,287 ----
+      if (getlines)
+      {
+  	/* get all blocks in memory by accessing all lines (clumsy!) */
+! 	mf_dont_release = TRUE;
+  	for (lnum = 1; lnum <= buf->b_ml.ml_line_count; ++lnum)
+  	    (void)ml_get_buf(buf, lnum, FALSE);
+! 	mf_dont_release = FALSE;
+  	/* TODO: should check if all blocks are really in core */
+      }
+  
+***************
+*** 830,836 ****
+      buf_T	*buf;
+  
+      /* don't release while in mf_close_file() */
+!     if (dont_release)
+  	return NULL;
+  
+      /*
+--- 829,835 ----
+      buf_T	*buf;
+  
+      /* don't release while in mf_close_file() */
+!     if (mf_dont_release)
+  	return NULL;
+  
+      /*
+*** ../vim-7.0.191/src/memline.c	Tue Jan  9 15:15:36 2007
+--- src/memline.c	Wed Feb  7 03:29:31 2007
+***************
+*** 2074,2081 ****
+  /*
+   * See if it is the same line as requested last time.
+   * Otherwise may need to flush last used line.
+   */
+!     if (buf->b_ml.ml_line_lnum != lnum)
+      {
+  	ml_flush_line(buf);
+  
+--- 2074,2083 ----
+  /*
+   * See if it is the same line as requested last time.
+   * Otherwise may need to flush last used line.
++  * Don't use the last used line when 'swapfile' is reset, need to load all
++  * blocks.
+   */
+!     if (buf->b_ml.ml_line_lnum != lnum || mf_dont_release)
+      {
+  	ml_flush_line(buf);
+  
+***************
+*** 3200,3212 ****
+       * If not, flush and release the locked block.
+       * Don't do this for ML_INSERT_SAME, because the stack need to be updated.
+       * Don't do this for ML_FLUSH, because we want to flush the locked block.
+       */
+      if (buf->b_ml.ml_locked)
+      {
+! 	if (ML_SIMPLE(action) && buf->b_ml.ml_locked_low <= lnum
+! 					  && buf->b_ml.ml_locked_high >= lnum)
+  	{
+! 		/* remember to update pointer blocks and stack later */
+  	    if (action == ML_INSERT)
+  	    {
+  		++(buf->b_ml.ml_locked_lineadd);
+--- 3202,3217 ----
+       * If not, flush and release the locked block.
+       * Don't do this for ML_INSERT_SAME, because the stack need to be updated.
+       * Don't do this for ML_FLUSH, because we want to flush the locked block.
++      * Don't do this when 'swapfile' is reset, we want to load all the blocks.
+       */
+      if (buf->b_ml.ml_locked)
+      {
+! 	if (ML_SIMPLE(action)
+! 		&& buf->b_ml.ml_locked_low <= lnum
+! 		&& buf->b_ml.ml_locked_high >= lnum
+! 		&& !mf_dont_release)
+  	{
+! 	    /* remember to update pointer blocks and stack later */
+  	    if (action == ML_INSERT)
+  	    {
+  		++(buf->b_ml.ml_locked_lineadd);
+*** ../vim-7.0.191/src/version.c	Sun Feb  4 02:59:04 2007
+--- src/version.c	Wed Feb  7 03:40:28 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     192,
+  /**/
+
+-- 
+From "know your smileys":
+ %-)	After staring at screen for 15 hours
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.0.193
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.193?rev=913&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.193 (added)
+++ trunk/packages/vim/upstream/patches/7.0.193 Tue Feb 13 16:41:39 2007
@@ -1,0 +1,53 @@
+To: vim-dev at vim.org
+Subject: patch 7.0.193
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.193
+Problem:    Using --remote or --remote-tab with an argument that matches
+            'wildignore' causes a crash.
+Solution:   Check the argument count before using ARGLIST[0].
+Files:      src/ex_cmds.c
+
+
+*** ../vim-7.0.192/src/ex_cmds.c	Tue Sep  5 18:28:45 2006
+--- src/ex_cmds.c	Tue Feb 13 03:47:52 2007
+***************
+*** 6967,6972 ****
+--- 6967,6980 ----
+       */
+      set_arglist(eap->arg);
+  
++     /*
++      * Expanding wildcards may result in an empty argument list.  E.g. when
++      * editing "foo.pyc" and ".pyc" is in 'wildignore'.  Assume that we
++      * already did an error message for this.
++      */
++     if (ARGCOUNT == 0)
++ 	return;
++ 
+  # ifdef FEAT_WINDOWS
+      if (cmdmod.tab)
+      {
+*** ../vim-7.0.192/src/version.c	Wed Feb  7 03:42:37 2007
+--- src/version.c	Tue Feb 13 03:47:08 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     193,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+113. You are asked about a bus schedule, you wonder if it is 16 or 32 bits.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.0.194
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.194?rev=913&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.194 (added)
+++ trunk/packages/vim/upstream/patches/7.0.194 Tue Feb 13 16:41:39 2007
@@ -1,0 +1,97 @@
+To: vim-dev at vim.org
+Subject: patch 7.0.194
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.194
+Problem:    Once an ml_get error is given redrawing part of the screen may
+            cause it again, resulting in an endless loop.
+Solution:   Don't give the error message for a recursive call.
+Files:      src/memline.c
+
+
+*** ../vim-7.0.193/src/memline.c	Wed Feb  7 03:42:37 2007
+--- src/memline.c	Tue Feb 13 03:56:00 2007
+***************
+*** 2054,2066 ****
+      linenr_T	lnum;
+      int		will_change;		/* line will be changed */
+  {
+!     bhdr_T    *hp;
+!     DATA_BL *dp;
+!     char_u  *ptr;
+  
+      if (lnum > buf->b_ml.ml_line_count)	/* invalid line number */
+      {
+! 	EMSGN(_("E315: ml_get: invalid lnum: %ld"), lnum);
+  errorret:
+  	STRCPY(IObuff, "???");
+  	return IObuff;
+--- 2054,2074 ----
+      linenr_T	lnum;
+      int		will_change;		/* line will be changed */
+  {
+!     bhdr_T	*hp;
+!     DATA_BL	*dp;
+!     char_u	*ptr;
+!     static int	recursive = 0;
+  
+      if (lnum > buf->b_ml.ml_line_count)	/* invalid line number */
+      {
+! 	if (recursive == 0)
+! 	{
+! 	    /* Avoid giving this message for a recursive call, may happen when
+! 	     * the GUI redraws part of the text. */
+! 	    ++recursive;
+! 	    EMSGN(_("E315: ml_get: invalid lnum: %ld"), lnum);
+! 	    --recursive;
+! 	}
+  errorret:
+  	STRCPY(IObuff, "???");
+  	return IObuff;
+***************
+*** 2088,2094 ****
+  	 */
+  	if ((hp = ml_find_line(buf, lnum, ML_FIND)) == NULL)
+  	{
+! 	    EMSGN(_("E316: ml_get: cannot find line %ld"), lnum);
+  	    goto errorret;
+  	}
+  
+--- 2096,2109 ----
+  	 */
+  	if ((hp = ml_find_line(buf, lnum, ML_FIND)) == NULL)
+  	{
+! 	    if (recursive == 0)
+! 	    {
+! 		/* Avoid giving this message for a recursive call, may happen
+! 		 * when the GUI redraws part of the text. */
+! 		++recursive;
+! 		EMSGN(_("E316: ml_get: cannot find line %ld"), lnum);
+! 		--recursive;
+! 	    }
+  	    goto errorret;
+  	}
+  
+*** ../vim-7.0.193/src/version.c	Tue Feb 13 03:49:01 2007
+--- src/version.c	Tue Feb 13 03:59:22 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     194,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+114. You are counting items, you go "0,1,2,3,4,5,6,7,8,9,A,B,C,D...".
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Added: trunk/packages/vim/upstream/patches/7.0.195
URL: http://svn.debian.org/wsvn/pkg-vim/trunk/packages/vim/upstream/patches/7.0.195?rev=913&op=file
==============================================================================
--- trunk/packages/vim/upstream/patches/7.0.195 (added)
+++ trunk/packages/vim/upstream/patches/7.0.195 Tue Feb 13 16:41:39 2007
@@ -1,0 +1,89 @@
+To: vim-dev at vim.org
+Subject: patch 7.0.195
+Fcc: outbox
+From: Bram Moolenaar <Bram at moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.0.195
+Problem:    When a buffer is modified and 'autowriteall' is set, ":quit"
+            results in an endless loop when there is a conversion error while
+            writing. (Nikolai Weibull)
+Solution:   Make autowrite() return FAIL if the buffer is still changed after
+            writing it.
+Files:      src/ex_cmds2.c
+
+
+*** ../vim-7.0.194/src/ex_cmds2.c	Tue Jan 16 21:31:38 2007
+--- src/ex_cmds2.c	Tue Feb 13 06:11:28 2007
+***************
+*** 1242,1255 ****
+      buf_T	*buf;
+      int		forceit;
+  {
+      if (!(p_aw || p_awa) || !p_write
+  #ifdef FEAT_QUICKFIX
+! 	/* never autowrite a "nofile" or "nowrite" buffer */
+! 	|| bt_dontwrite(buf)
+  #endif
+! 	|| (!forceit && buf->b_p_ro) || buf->b_ffname == NULL)
+  	return FAIL;
+!     return buf_write_all(buf, forceit);
+  }
+  
+  /*
+--- 1242,1263 ----
+      buf_T	*buf;
+      int		forceit;
+  {
++     int		r;
++ 
+      if (!(p_aw || p_awa) || !p_write
+  #ifdef FEAT_QUICKFIX
+! 	    /* never autowrite a "nofile" or "nowrite" buffer */
+! 	    || bt_dontwrite(buf)
+  #endif
+! 	    || (!forceit && buf->b_p_ro) || buf->b_ffname == NULL)
+  	return FAIL;
+!     r = buf_write_all(buf, forceit);
+! 
+!     /* Writing may succeed but the buffer still changed, e.g., when there is a
+!      * conversion error.  We do want to return FAIL then. */
+!     if (buf_valid(buf) && bufIsChanged(buf))
+! 	r = FAIL;
+!     return r;
+  }
+  
+  /*
+***************
+*** 1472,1477 ****
+--- 1480,1487 ----
+  	if (buf == NULL)    /* No buffers changed */
+  	    return FALSE;
+  
++ 	/* Try auto-writing the buffer.  If this fails but the buffer no
++ 	 * longer exists it's not changed, that's OK. */
+  	if (check_changed(buf, p_awa, TRUE, FALSE, TRUE) && buf_valid(buf))
+  	    break;	    /* didn't save - still changes */
+      }
+*** ../vim-7.0.194/src/version.c	Tue Feb 13 04:03:05 2007
+--- src/version.c	Tue Feb 13 06:18:28 2007
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     195,
+  /**/
+
+-- 
+hundred-and-one symptoms of being an internet addict:
+115. You are late picking up your kid from school and try to explain
+     to the teacher you were stuck in Web traffic.
+
+ /// Bram Moolenaar -- Bram at Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///




More information about the pkg-vim-maintainers mailing list