]> git.pld-linux.org Git - packages/vim.git/commitdiff
- new auto/th/vim-7_2_284-1
authorAdam Gołębiowski <adamg@pld-linux.org>
Sat, 7 Nov 2009 14:54:39 +0000 (14:54 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    7.2.268 -> 1.1
    7.2.269 -> 1.1
    7.2.270 -> 1.1
    7.2.271 -> 1.1
    7.2.272 -> 1.1
    7.2.273 -> 1.1
    7.2.274 -> 1.1
    7.2.275 -> 1.1
    7.2.276 -> 1.1
    7.2.277 -> 1.1
    7.2.278 -> 1.1
    7.2.279 -> 1.1
    7.2.280 -> 1.1
    7.2.281 -> 1.1
    7.2.282 -> 1.1
    7.2.283 -> 1.1
    7.2.284 -> 1.1

17 files changed:
7.2.268 [new file with mode: 0644]
7.2.269 [new file with mode: 0644]
7.2.270 [new file with mode: 0644]
7.2.271 [new file with mode: 0644]
7.2.272 [new file with mode: 0644]
7.2.273 [new file with mode: 0644]
7.2.274 [new file with mode: 0644]
7.2.275 [new file with mode: 0644]
7.2.276 [new file with mode: 0644]
7.2.277 [new file with mode: 0644]
7.2.278 [new file with mode: 0644]
7.2.279 [new file with mode: 0644]
7.2.280 [new file with mode: 0644]
7.2.281 [new file with mode: 0644]
7.2.282 [new file with mode: 0644]
7.2.283 [new file with mode: 0644]
7.2.284 [new file with mode: 0644]

diff --git a/7.2.268 b/7.2.268
new file mode 100644 (file)
index 0000000..89c50b0
--- /dev/null
+++ b/7.2.268
@@ -0,0 +1,80 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.268
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.268
+Problem:    Crash when using Python to set cursor beyond end of line.
+           (winterTTr)
+Solution:   Check the column to be valid.
+Files:     src/if_python.c
+
+
+*** ../vim-7.2.267/src/if_python.c     2009-07-09 20:06:30.000000000 +0200
+--- src/if_python.c    2009-10-10 14:49:10.000000000 +0200
+***************
+*** 2058,2063 ****
+--- 2058,2064 ----
+      {
+       long lnum;
+       long col;
++      long len;
+  
+       if (!PyArg_Parse(val, "(ll)", &lnum, &col))
+           return -1;
+***************
+*** 2072,2081 ****
+       if (VimErrorCheck())
+           return -1;
+  
+!      /* NO CHECK ON COLUMN - SEEMS NOT TO MATTER */
+  
+       this->win->w_cursor.lnum = lnum;
+       this->win->w_cursor.col = col;
+       update_screen(VALID);
+  
+       return 0;
+--- 2073,2088 ----
+       if (VimErrorCheck())
+           return -1;
+  
+!      /* When column is out of range silently correct it. */
+!      len = STRLEN(ml_get_buf(this->win->w_buffer, lnum, FALSE));
+!      if (col > len)
+!          col = len;
+  
+       this->win->w_cursor.lnum = lnum;
+       this->win->w_cursor.col = col;
++ #ifdef FEAT_VIRTUALEDIT
++      this->win->w_cursor.coladd = 0;
++ #endif
+       update_screen(VALID);
+  
+       return 0;
+*** ../vim-7.2.267/src/version.c       2009-10-07 16:19:52.000000000 +0200
+--- src/version.c      2009-11-03 11:42:08.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     268,
+  /**/
+
+-- 
+VOICE OVER: As the horrendous Black Beast lunged forward, escape for Arthur
+            and his knights seemed hopeless,  when, suddenly ... the animator
+            suffered a fatal heart attack.
+ANIMATOR:   Aaaaagh!
+VOICE OVER: The cartoon peril was no more ... The Quest for Holy Grail could
+            continue.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.269 b/7.2.269
new file mode 100644 (file)
index 0000000..ec15f45
--- /dev/null
+++ b/7.2.269
@@ -0,0 +1,261 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.269
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.269
+Problem:    Many people struggle to find out why Vim startup is slow.
+Solution:   Add the --startuptime command line flag.
+Files:     runtime/doc/starting.txt, src/globals.h, src/feature.h,
+           src/main.c, src/macros.h
+
+
+*** ../vim-7.2.268/runtime/doc/starting.txt    2008-11-09 13:43:25.000000000 +0100
+--- runtime/doc/starting.txt   2009-10-25 11:57:51.000000000 +0100
+***************
+*** 144,149 ****
+--- 144,156 ----
+                       -u NORC                 no                  yes
+                       --noplugin              yes                 no
+  
++ --startuptime={fname}                                        *--startuptime*
++              During startup write timing messages to the file {fname}.
++              This can be used to find out where time is spent while loading
++              your .vimrc and plugins.
++              When {fname} already exists new messages are appended.
++              {only when compiled with this feature}
++ 
+                                                       *--literal*
+  --literal    Take file names literally, don't expand wildcards.  Not needed
+               for Unix, because Vim always takes file names literally (the
+***************
+*** 471,476 ****
+--- 487,493 ----
+               window title and copy/paste using the X clipboard.  This
+               avoids a long startup time when running Vim in a terminal
+               emulator and the connection to the X server is slow.
++              See |--startuptime| to find out if affects you.
+               Only makes a difference on Unix or VMS, when compiled with the
+               |+X11| feature.  Otherwise it's ignored.
+               To disable the connection only for specific terminals, see the
+*** ../vim-7.2.268/src/globals.h       2009-07-29 12:09:49.000000000 +0200
+--- src/globals.h      2009-10-10 15:14:31.000000000 +0200
+***************
+*** 1567,1572 ****
+--- 1567,1576 ----
+  /* For undo we need to know the lowest time possible. */
+  EXTERN time_t starttime;
+  
++ #ifdef STARTUPTIME
++ EXTERN FILE *time_fd INIT(= NULL);  /* where to write startup timing */
++ #endif
++ 
+  /*
+   * Some compilers warn for not using a return value, but in some situations we
+   * can't do anything useful with the value.  Assign to this variable to avoid
+*** ../vim-7.2.268/src/feature.h       2008-11-09 13:43:25.000000000 +0100
+--- src/feature.h      2009-10-10 16:16:19.000000000 +0200
+***************
+*** 844,853 ****
+  /* #define DEBUG */
+  
+  /*
+!  * STARTUPTIME               Time the startup process.  Writes a "vimstartup" file
+!  *                   with timestamps.
+   */
+! /* #define STARTUPTIME "vimstartup" */
+  
+  /*
+   * MEM_PROFILE               Debugging of memory allocation and freeing.
+--- 844,857 ----
+  /* #define DEBUG */
+  
+  /*
+!  * STARTUPTIME               Time the startup process.  Writes a file with
+!  *                   timestamps.
+   */
+! #if defined(FEAT_NORMAL) \
+!      && ((defined(HAVE_GETTIMEOFDAY) && defined(HAVE_SYS_TIME_H)) \
+!              || defined(WIN3264))
+! # define STARTUPTIME 1
+! #endif
+  
+  /*
+   * MEM_PROFILE               Debugging of memory allocation and freeing.
+*** ../vim-7.2.268/src/main.c  2009-05-26 22:58:43.000000000 +0200
+--- src/main.c 2009-10-10 16:18:32.000000000 +0200
+***************
+*** 130,139 ****
+  #endif
+  
+  
+- #ifdef STARTUPTIME
+- static FILE *time_fd = NULL;
+- #endif
+- 
+  /*
+   * Different types of error messages.
+   */
+--- 130,135 ----
+***************
+*** 173,178 ****
+--- 169,177 ----
+      char_u   *fname = NULL;          /* file name from command line */
+      mparm_T  params;                 /* various parameters passed between
+                                        * main() and other functions. */
++ #ifdef STARTUPTIME
++     int              i;
++ #endif
+  
+      /*
+       * Do any system-specific initialisations.  These can NOT use IObuff or
+***************
+*** 203,210 ****
+  #endif
+  
+  #ifdef STARTUPTIME
+!     time_fd = mch_fopen(STARTUPTIME, "a");
+!     TIME_MSG("--- VIM STARTING ---");
+  #endif
+      starttime = time(NULL);
+  
+--- 202,216 ----
+  #endif
+  
+  #ifdef STARTUPTIME
+!     for (i = 1; i < argc; ++i)
+!     {
+!      if (STRNICMP(argv[i], "--startuptime=", 14) == 0)
+!      {
+!          time_fd = mch_fopen(argv[i] + 14, "a");
+!          TIME_MSG("--- VIM STARTING ---");
+!          break;
+!      }
+!     }
+  #endif
+      starttime = time(NULL);
+  
+***************
+*** 1150,1155 ****
+--- 1156,1173 ----
+           cursor_on();
+  
+           do_redraw = FALSE;
++ 
++ #ifdef STARTUPTIME
++          /* Now that we have drawn the first screen all the startup stuff
++           * has been done, close any file for startup messages. */
++          if (time_fd != NULL)
++          {
++              TIME_MSG("first screen update");
++              TIME_MSG("--- VIM STARTED ---");
++              fclose(time_fd);
++              time_fd = NULL;
++          }
++ #endif
+       }
+  #ifdef FEAT_GUI
+       if (need_mouse_correct)
+***************
+*** 1743,1748 ****
+--- 1761,1770 ----
+                   /* already processed, skip */
+               }
+  #endif
++              else if (STRNICMP(argv[0] + argv_idx, "startuptime", 11) == 0)
++              {
++                  /* already processed, skip */
++              }
+               else
+               {
+                   if (argv[0][argv_idx])
+***************
+*** 3211,3216 ****
+--- 3233,3252 ----
+  
+  static struct timeval        prev_timeval;
+  
++ # ifdef WIN3264
++ /*
++  * Windows doesn't have gettimeofday(), although it does have struct timeval.
++  */
++     static int
++ gettimeofday(struct timeval *tv, char *dummy)
++ {
++     long t = clock();
++     tv->tv_sec = t / CLOCKS_PER_SEC;
++     tv->tv_usec = (t - tv->tv_sec * CLOCKS_PER_SEC) * 1000000 / CLOCKS_PER_SEC;
++     return 0;
++ }
++ # endif
++ 
+  /*
+   * Save the previous time before doing something that could nest.
+   * set "*tv_rel" to the time elapsed so far.
+***************
+*** 3299,3318 ****
+      }
+  }
+  
+- # ifdef WIN3264
+- /*
+-  * Windows doesn't have gettimeofday(), although it does have struct timeval.
+-  */
+-     int
+- gettimeofday(struct timeval *tv, char *dummy)
+- {
+-     long t = clock();
+-     tv->tv_sec = t / CLOCKS_PER_SEC;
+-     tv->tv_usec = (t - tv->tv_sec * CLOCKS_PER_SEC) * 1000000 / CLOCKS_PER_SEC;
+-     return 0;
+- }
+- # endif
+- 
+  #endif
+  
+  #if defined(FEAT_CLIENTSERVER) || defined(PROTO)
+--- 3335,3340 ----
+*** ../vim-7.2.268/src/macros.h        2009-05-17 13:30:58.000000000 +0200
+--- src/macros.h       2009-10-10 15:19:07.000000000 +0200
+***************
+*** 243,249 ****
+  #endif
+  
+  #ifdef STARTUPTIME
+! # define TIME_MSG(s) time_msg(s, NULL)
+  #else
+  # define TIME_MSG(s)
+  #endif
+--- 243,249 ----
+  #endif
+  
+  #ifdef STARTUPTIME
+! # define TIME_MSG(s) { if (time_fd != NULL) time_msg(s, NULL); }
+  #else
+  # define TIME_MSG(s)
+  #endif
+*** ../vim-7.2.268/src/version.c       2009-11-03 11:43:05.000000000 +0100
+--- src/version.c      2009-11-03 12:06:31.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     269,
+  /**/
+
+-- 
+BEDEVERE: Look!  It's the old man from scene 24 - what's he Doing here?
+ARTHUR:   He is the keeper of the Bridge.  He asks each traveler five
+          questions ...
+GALAHAD:  Three questions.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.270 b/7.2.270
new file mode 100644 (file)
index 0000000..7ad6458
--- /dev/null
+++ b/7.2.270
@@ -0,0 +1,72 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.270
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.270
+Problem:    Using ":@c" when the c register contains a CR causes the rest to
+           be executed later. (Dexter Douglas)
+Solution:   Don't check for typeahead to start with ':', keep executing
+           commands until all added typeahead has been used.
+Files:     src/ex_docmd.c
+
+
+*** ../vim-7.2.269/src/ex_docmd.c      2009-09-30 13:23:57.000000000 +0200
+--- src/ex_docmd.c     2009-10-28 12:06:54.000000000 +0100
+***************
+*** 8358,8363 ****
+--- 8358,8364 ----
+      exarg_T  *eap;
+  {
+      int              c;
++     int              prev_len = typebuf.tb_len;
+  
+      curwin->w_cursor.lnum = eap->line2;
+  
+***************
+*** 8383,8393 ****
+  
+       /*
+        * Execute from the typeahead buffer.
+!       * Originally this didn't check for the typeahead buffer to be empty,
+!       * thus could read more Ex commands from stdin.  It's not clear why,
+!       * it is certainly unexpected.
+        */
+!      while ((!stuff_empty() || typebuf.tb_len > 0) && vpeekc() == ':')
+           (void)do_cmdline(NULL, getexline, NULL, DOCMD_NOWAIT|DOCMD_VERBOSE);
+  
+       exec_from_reg = save_efr;
+--- 8384,8393 ----
+  
+       /*
+        * Execute from the typeahead buffer.
+!       * Continue until the stuff buffer is empty and all added characters
+!       * have been consumed.
+        */
+!      while (!stuff_empty() || typebuf.tb_len > prev_len)
+           (void)do_cmdline(NULL, getexline, NULL, DOCMD_NOWAIT|DOCMD_VERBOSE);
+  
+       exec_from_reg = save_efr;
+*** ../vim-7.2.269/src/version.c       2009-11-03 12:10:39.000000000 +0100
+--- src/version.c      2009-11-03 12:32:47.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     270,
+  /**/
+
+-- 
+To the optimist, the glass is half full.
+To the pessimist, the glass is half empty.
+To the engineer, the glass is twice as big as it needs to be.
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.271 b/7.2.271
new file mode 100644 (file)
index 0000000..0742798
--- /dev/null
+++ b/7.2.271
@@ -0,0 +1,92 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.271
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.271
+Problem:    Using freed memory in Motif GUI version when making a choice.
+Solution:   Free memory only after using it. (Dominique Pelle)
+Files:     src/gui_xmdlg.c
+
+
+*** ../vim-7.2.270/src/gui_xmdlg.c     2009-05-21 23:25:38.000000000 +0200
+--- src/gui_xmdlg.c    2009-10-28 21:56:15.000000000 +0100
+***************
+*** 10,16 ****
+  /*
+   * (C) 2001,2005 by Marcin Dalecki <martin@dalecki.de>
+   *
+!  * Implementation of dialogue functions for the Motif GUI variant.
+   *
+   * Note about Lesstif: Apparently lesstif doesn't get the widget layout right,
+   * when using a dynamic scrollbar policy.
+--- 10,16 ----
+  /*
+   * (C) 2001,2005 by Marcin Dalecki <martin@dalecki.de>
+   *
+!  * Implementation of dialog functions for the Motif GUI variant.
+   *
+   * Note about Lesstif: Apparently lesstif doesn't get the widget layout right,
+   * when using a dynamic scrollbar policy.
+***************
+*** 633,648 ****
+       data->sel[which] = XtNewString(sel);
+      else
+      {
+-      XtFree(data->sel[which]);
+       if (!strcmp(data->sel[which], sel))
+       {
+           /* unselecting current selection */
+           data->sel[which] = NULL;
+           if (w)
+               XmListDeselectItem(w, call_data->item);
+       }
+       else
+           data->sel[which] = XtNewString(sel);
+      }
+      XtFree(sel);
+  
+--- 633,651 ----
+       data->sel[which] = XtNewString(sel);
+      else
+      {
+       if (!strcmp(data->sel[which], sel))
+       {
+           /* unselecting current selection */
++          XtFree(data->sel[which]);
+           data->sel[which] = NULL;
+           if (w)
+               XmListDeselectItem(w, call_data->item);
+       }
+       else
++      {
++          XtFree(data->sel[which]);
+           data->sel[which] = XtNewString(sel);
++      }
+      }
+      XtFree(sel);
+  
+*** ../vim-7.2.270/src/version.c       2009-11-03 12:38:50.000000000 +0100
+--- src/version.c      2009-11-03 12:48:26.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     271,
+  /**/
+
+-- 
+ROBIN:  (warily) And if you get a question wrong?
+ARTHUR: You are cast into the Gorge of Eternal Peril.
+ROBIN:  Oh ... wacho!
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.272 b/7.2.272
new file mode 100644 (file)
index 0000000..22bebbc
--- /dev/null
+++ b/7.2.272
@@ -0,0 +1,82 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.272
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.272
+Problem:    "_.svz" is not recognized as a swap file. (David M. Besonen)
+Solution:   Accept .s[uvw][a-z] as a swap file name extension.
+Files:     src/memline.c
+
+
+*** ../vim-7.2.271/src/memline.c       2009-04-22 15:56:27.000000000 +0200
+--- src/memline.c      2009-10-29 20:55:08.000000000 +0100
+***************
+*** 864,884 ****
+      recoverymode = TRUE;
+      called_from_main = (curbuf->b_ml.ml_mfp == NULL);
+      attr = hl_attr(HLF_E);
+! /*
+!  * If the file name ends in ".sw?" we use it directly.
+!  * Otherwise a search is done to find the swap file(s).
+!  */
+      fname = curbuf->b_fname;
+      if (fname == NULL)                   /* When there is no file name */
+       fname = (char_u *)"";
+      len = (int)STRLEN(fname);
+      if (len >= 4 &&
+  #if defined(VMS) || defined(RISCOS)
+!          STRNICMP(fname + len - 4, "_sw" , 3)
+  #else
+!          STRNICMP(fname + len - 4, ".sw" , 3)
+  #endif
+!              == 0)
+      {
+       directly = TRUE;
+       fname = vim_strsave(fname); /* make a copy for mf_open() */
+--- 864,887 ----
+      recoverymode = TRUE;
+      called_from_main = (curbuf->b_ml.ml_mfp == NULL);
+      attr = hl_attr(HLF_E);
+! 
+!     /*
+!      * If the file name ends in ".s[uvw][a-z]" we assume this is the swap file.
+!      * Otherwise a search is done to find the swap file(s).
+!      */
+      fname = curbuf->b_fname;
+      if (fname == NULL)                   /* When there is no file name */
+       fname = (char_u *)"";
+      len = (int)STRLEN(fname);
+      if (len >= 4 &&
+  #if defined(VMS) || defined(RISCOS)
+!          STRNICMP(fname + len - 4, "_s" , 2)
+  #else
+!          STRNICMP(fname + len - 4, ".s" , 2)
+  #endif
+!              == 0
+!              && vim_strchr((char_u *)"UVWuvw", fname[len - 2]) != NULL
+!              && ASCII_ISALPHA(fname[len - 1]))
+      {
+       directly = TRUE;
+       fname = vim_strsave(fname); /* make a copy for mf_open() */
+*** ../vim-7.2.271/src/version.c       2009-11-03 12:53:44.000000000 +0100
+--- src/version.c      2009-11-03 13:02:51.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     272,
+  /**/
+
+-- 
+Sorry, no fortune today.
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.273 b/7.2.273
new file mode 100644 (file)
index 0000000..ac00afa
--- /dev/null
+++ b/7.2.273
@@ -0,0 +1,130 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.273
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.273
+Problem:    Crash with redir to unknown array. (Christian Brabandt)
+Solution:   Don't assign the redir result when there was an error.
+Files:     src/eval.c
+
+
+*** ../vim-7.2.272/src/eval.c  2009-09-30 15:15:33.000000000 +0200
+--- src/eval.c 2009-11-03 12:05:07.000000000 +0100
+***************
+*** 988,1000 ****
+      int              err;
+      typval_T tv;
+  
+!     /* Make sure a valid variable name is specified */
+      if (!eval_isnamec1(*name))
+      {
+       EMSG(_(e_invarg));
+       return FAIL;
+      }
+  
+      redir_varname = vim_strsave(name);
+      if (redir_varname == NULL)
+       return FAIL;
+--- 988,1001 ----
+      int              err;
+      typval_T tv;
+  
+!     /* Catch a bad name early. */
+      if (!eval_isnamec1(*name))
+      {
+       EMSG(_(e_invarg));
+       return FAIL;
+      }
+  
++     /* Make a copy of the name, it is used in redir_lval until redir ends. */
+      redir_varname = vim_strsave(name);
+      if (redir_varname == NULL)
+       return FAIL;
+***************
+*** 1019,1024 ****
+--- 1020,1026 ----
+           EMSG(_(e_trailing));
+       else
+           EMSG(_(e_invarg));
++      redir_endp = NULL;  /* don't store a value, only cleanup */
+       var_redir_stop();
+       return FAIL;
+      }
+***************
+*** 1037,1042 ****
+--- 1039,1045 ----
+      did_emsg |= save_emsg;
+      if (err)
+      {
++      redir_endp = NULL;  /* don't store a value, only cleanup */
+       var_redir_stop();
+       return FAIL;
+      }
+***************
+*** 1085,1090 ****
+--- 1088,1094 ----
+  
+  /*
+   * Stop redirecting command output to a variable.
++  * Frees the allocated memory.
+   */
+      void
+  var_redir_stop()
+***************
+*** 1093,1106 ****
+  
+      if (redir_lval != NULL)
+      {
+!      /* Append the trailing NUL. */
+!      ga_append(&redir_ga, NUL);
+  
+!      /* Assign the text to the variable. */
+!      tv.v_type = VAR_STRING;
+!      tv.vval.v_string = redir_ga.ga_data;
+!      set_var_lval(redir_lval, redir_endp, &tv, FALSE, (char_u *)".");
+!      vim_free(tv.vval.v_string);
+  
+       clear_lval(redir_lval);
+       vim_free(redir_lval);
+--- 1097,1114 ----
+  
+      if (redir_lval != NULL)
+      {
+!      /* If there was no error: assign the text to the variable. */
+!      if (redir_endp != NULL)
+!      {
+!          ga_append(&redir_ga, NUL);  /* Append the trailing NUL. */
+!          tv.v_type = VAR_STRING;
+!          tv.vval.v_string = redir_ga.ga_data;
+!          set_var_lval(redir_lval, redir_endp, &tv, FALSE, (char_u *)".");
+!      }
+  
+!      /* free the collected output */
+!      vim_free(redir_ga.ga_data);
+!      redir_ga.ga_data = NULL;
+  
+       clear_lval(redir_lval);
+       vim_free(redir_lval);
+*** ../vim-7.2.272/src/version.c       2009-11-03 13:06:03.000000000 +0100
+--- src/version.c      2009-11-03 14:24:06.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     273,
+  /**/
+
+-- 
+Permission is granted to read this message out aloud on Kings Cross Road,
+London, under the condition that the orator is properly dressed.
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.274 b/7.2.274
new file mode 100644 (file)
index 0000000..809cedc
--- /dev/null
+++ b/7.2.274
@@ -0,0 +1,130 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.274
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.274
+Problem:    Syntax folding doesn't work properly when adding a comment.
+Solution:   Fix it and add a test. (Lech Lorens)
+Files:     src/fold.c, src/testdir/test45.in, src/testdir/test45.ok
+
+
+*** ../vim-7.2.273/src/fold.c  2009-09-18 15:16:37.000000000 +0200
+--- src/fold.c 2009-11-03 12:36:37.000000000 +0100
+***************
+*** 2256,2261 ****
+--- 2256,2295 ----
+       }
+      }
+  
++     /*
++      * If folding is defined by the syntax, it is possible that a change in
++      * one line will cause all sub-folds of the current fold to change (e.g.,
++      * closing a C-style comment can cause folds in the subsequent lines to
++      * appear). To take that into account we should adjust the value of "bot"
++      * to point to the end of the current fold:
++      */
++     if (foldlevelSyntax == getlevel)
++     {
++      garray_T *gap = &wp->w_folds;
++      fold_T   *fp = NULL;
++      int       current_fdl = 0;
++      linenr_T  fold_start_lnum = 0;
++      linenr_T  lnum_rel = fline.lnum;
++ 
++      while (current_fdl < fline.lvl)
++      {
++          if (!foldFind(gap, lnum_rel, &fp))
++              break;
++          ++current_fdl;
++ 
++          fold_start_lnum += fp->fd_top;
++          gap = &fp->fd_nested;
++          lnum_rel -= fp->fd_top;
++      }
++      if (fp != NULL && current_fdl == fline.lvl)
++      {
++          linenr_T fold_end_lnum = fold_start_lnum + fp->fd_len;
++ 
++          if (fold_end_lnum > bot)
++              bot = fold_end_lnum;
++      }
++     }
++ 
+      start = fline.lnum;
+      end = bot;
+      /* Do at least one line. */
+*** ../vim-7.2.273/src/testdir/test45.in       2007-09-25 17:58:43.000000000 +0200
+--- src/testdir/test45.in      2009-11-03 12:22:38.000000000 +0100
+***************
+*** 28,36 ****
+  k:call append("$", foldlevel("."))
+  :" test syntax folding
+  :set fdm=syntax fdl=0
+! :syn region Hup start="dd" end="hh" fold
+  Gzk:call append("$", "folding " . getline("."))
+  k:call append("$", getline("."))
+  :" test expression folding
+  :fun Flvl()
+    let l = getline(v:lnum)
+--- 28,41 ----
+  k:call append("$", foldlevel("."))
+  :" test syntax folding
+  :set fdm=syntax fdl=0
+! :syn region Hup start="dd" end="ii" fold contains=Fd1,Fd2,Fd3
+! :syn region Fd1 start="ee" end="ff" fold contained
+! :syn region Fd2 start="gg" end="hh" fold contained
+! :syn region Fd3 start="commentstart" end="commentend" fold contained
+  Gzk:call append("$", "folding " . getline("."))
+  k:call append("$", getline("."))
++ jAcommentstart  \eAcommentend\e:set fdl=1
++ 3j:call append("$", getline("."))
+  :" test expression folding
+  :fun Flvl()
+    let l = getline(v:lnum)
+*** ../vim-7.2.273/src/testdir/test45.ok       2004-06-13 17:47:37.000000000 +0200
+--- src/testdir/test45.ok      2009-11-03 12:22:50.000000000 +0100
+***************
+*** 8,15 ****
+  0
+  indent 2
+  1
+! folding 8 hh
+      3 cc
+  expr 2
+  1
+  2
+--- 8,16 ----
+  0
+  indent 2
+  1
+! folding 9 ii
+      3 cc
++ 7 gg
+  expr 2
+  1
+  2
+*** ../vim-7.2.273/src/version.c       2009-11-03 14:26:29.000000000 +0100
+--- src/version.c      2009-11-03 14:44:21.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     274,
+  /**/
+
+-- 
+BRIDGEKEEPER: What is your favorite colour?
+LAUNCELOT:    Blue.
+BRIDGEKEEPER: Right.  Off you go.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.275 b/7.2.275
new file mode 100644 (file)
index 0000000..c6c6326
--- /dev/null
+++ b/7.2.275
@@ -0,0 +1,95 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.275
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.275
+Problem:    Warning for unused argument and comparing signed and unsigned.
+Solution:   Add type cast.
+Files:     src/memline.c
+
+
+*** ../vim-7.2.274/src/memline.c       2009-11-03 13:06:03.000000000 +0100
+--- src/memline.c      2009-10-29 20:55:08.000000000 +0100
+***************
+*** 1285,1291 ****
+                   for (i = 0; i < dp->db_line_count; ++i)
+                   {
+                       txt_start = (dp->db_index[i] & DB_INDEX_MASK);
+!                      if (txt_start <= HEADER_SIZE
+                                         || txt_start >= (int)dp->db_txt_end)
+                       {
+                           p = (char_u *)"???";
+--- 1285,1291 ----
+                   for (i = 0; i < dp->db_line_count; ++i)
+                   {
+                       txt_start = (dp->db_index[i] & DB_INDEX_MASK);
+!                      if (txt_start <= (int)HEADER_SIZE
+                                         || txt_start >= (int)dp->db_txt_end)
+                       {
+                           p = (char_u *)"???";
+***************
+*** 1296,1302 ****
+                       ml_append(lnum++, p, (colnr_T)0, TRUE);
+                   }
+                   if (has_error)
+!                      ml_append(lnum++, (char_u *)_("???END"), (colnr_T)0, TRUE);
+               }
+           }
+       }
+--- 1296,1303 ----
+                       ml_append(lnum++, p, (colnr_T)0, TRUE);
+                   }
+                   if (has_error)
+!                      ml_append(lnum++, (char_u *)_("???END"),
+!                                                          (colnr_T)0, TRUE);
+               }
+           }
+       }
+***************
+*** 3576,3586 ****
+   * Make swap file name out of the file name and a directory name.
+   * Returns pointer to allocated memory or NULL.
+   */
+- /*ARGSUSED*/
+      char_u *
+  makeswapname(fname, ffname, buf, dir_name)
+      char_u   *fname;
+!     char_u   *ffname;
+      buf_T    *buf;
+      char_u   *dir_name;
+  {
+--- 3577,3586 ----
+   * Make swap file name out of the file name and a directory name.
+   * Returns pointer to allocated memory or NULL.
+   */
+      char_u *
+  makeswapname(fname, ffname, buf, dir_name)
+      char_u   *fname;
+!     char_u   *ffname UNUSED;
+      buf_T    *buf;
+      char_u   *dir_name;
+  {
+*** ../vim-7.2.274/src/version.c       2009-11-03 14:46:35.000000000 +0100
+--- src/version.c      2009-11-03 15:28:33.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     275,
+  /**/
+
+-- 
+BRIDGEKEEPER: What is your favorite colour?
+GAWAIN:       Blue ...  No yelloooooww!
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.276 b/7.2.276
new file mode 100644 (file)
index 0000000..15dc68b
--- /dev/null
+++ b/7.2.276
@@ -0,0 +1,63 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.276
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.276
+Problem:    Crash when setting 'isprint' to a small bullet. (Raul Coronado)
+Solution:   Check for the character to be < 256.  Also make it possible to
+           specify a range of multi-byte characters. (Lech Lorens)
+Files:     src/charset.c
+
+
+*** ../vim-7.2.275/src/charset.c       2009-10-07 16:19:52.000000000 +0200
+--- src/charset.c      2009-11-03 12:46:12.000000000 +0100
+***************
+*** 187,195 ****
+               if (VIM_ISDIGIT(*p))
+                   c2 = getdigits(&p);
+               else
+                   c2 = *p++;
+           }
+!          if (c <= 0 || (c2 < c && c2 != -1) || c2 >= 256
+                                                || !(*p == NUL || *p == ','))
+               return FAIL;
+  
+--- 187,200 ----
+               if (VIM_ISDIGIT(*p))
+                   c2 = getdigits(&p);
+               else
++ #ifdef FEAT_MBYTE
++                   if (has_mbyte)
++                  c2 = mb_ptr2char_adv(&p);
++              else
++ #endif
+                   c2 = *p++;
+           }
+!          if (c <= 0 || c >= 256 || (c2 < c && c2 != -1) || c2 >= 256
+                                                || !(*p == NUL || *p == ','))
+               return FAIL;
+  
+*** ../vim-7.2.275/src/version.c       2009-11-03 15:32:58.000000000 +0100
+--- src/version.c      2009-11-03 16:03:18.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     276,
+  /**/
+
+-- 
+BRIDGEKEEPER: What is your favorite editor?
+GAWAIN:       Emacs ...  No, Viiiiiiiiiiimmmmmmm!
+           "Monty Python and the Holy editor wars" PYTHON (MONTY) SOFTWARE LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.277 b/7.2.277
new file mode 100644 (file)
index 0000000..ed3caf4
--- /dev/null
+++ b/7.2.277
@@ -0,0 +1,66 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.277
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.277
+Problem:    CTRL-Y in a diff'ed window may move the cursor outside of the
+           window. (Lech Lorens)
+Solution:   Limit the number of filler lines to the height of the window.
+           Don't reset filler lines to zero for an empty buffer.
+Files:     src/move.c
+
+
+*** ../vim-7.2.276/src/move.c  2009-05-15 21:31:11.000000000 +0200
+--- src/move.c 2009-11-03 14:39:55.000000000 +0100
+***************
+*** 183,191 ****
+       if (curwin->w_topline != 1)
+           redraw_later(NOT_VALID);
+       curwin->w_topline = 1;
+- #ifdef FEAT_DIFF
+-      curwin->w_topfill = 0;
+- #endif
+       curwin->w_botline = 2;
+       curwin->w_valid |= VALID_BOTLINE|VALID_BOTLINE_AP;
+  #ifdef FEAT_SCROLLBIND
+--- 183,188 ----
+***************
+*** 1257,1263 ****
+      while (line_count-- > 0)
+      {
+  #ifdef FEAT_DIFF
+!      if (curwin->w_topfill < diff_check(curwin, curwin->w_topline))
+       {
+           ++curwin->w_topfill;
+           ++done;
+--- 1254,1261 ----
+      while (line_count-- > 0)
+      {
+  #ifdef FEAT_DIFF
+!      if (curwin->w_topfill < diff_check(curwin, curwin->w_topline)
+!              && curwin->w_topfill < curwin->w_height - 1)
+       {
+           ++curwin->w_topfill;
+           ++done;
+*** ../vim-7.2.276/src/version.c       2009-11-03 16:03:59.000000000 +0100
+--- src/version.c      2009-11-03 16:22:04.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     277,
+  /**/
+
+-- 
+SIGFUN -- signature too funny (core dumped)
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.278 b/7.2.278
new file mode 100644 (file)
index 0000000..edf4e58
--- /dev/null
+++ b/7.2.278
@@ -0,0 +1,74 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.278
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.278
+Problem:    Using magic number in the folding code.
+Solution:   Use the defined MAX_LEVEL.
+Files:     src/fold.c
+
+
+*** ../vim-7.2.277/src/fold.c  2009-11-03 14:46:35.000000000 +0100
+--- src/fold.c 2009-11-03 12:36:37.000000000 +0100
+***************
+*** 1932,1938 ****
+  #ifdef FEAT_EVAL
+      if (*wp->w_p_fdt != NUL)
+      {
+!      char_u  dashes[51];
+       win_T   *save_curwin;
+       int     level;
+       char_u  *p;
+--- 1932,1938 ----
+  #ifdef FEAT_EVAL
+      if (*wp->w_p_fdt != NUL)
+      {
+!      char_u  dashes[MAX_LEVEL + 2];
+       win_T   *save_curwin;
+       int     level;
+       char_u  *p;
+***************
+*** 1944,1951 ****
+       /* Set "v:folddashes" to a string of "level" dashes. */
+       /* Set "v:foldlevel" to "level". */
+       level = foldinfo->fi_level;
+!      if (level > 50)
+!          level = 50;
+       vim_memset(dashes, '-', (size_t)level);
+       dashes[level] = NUL;
+       set_vim_var_string(VV_FOLDDASHES, dashes, -1);
+--- 1944,1951 ----
+       /* Set "v:folddashes" to a string of "level" dashes. */
+       /* Set "v:foldlevel" to "level". */
+       level = foldinfo->fi_level;
+!      if (level > (int)sizeof(dashes) - 1)
+!          level = (int)sizeof(dashes) - 1;
+       vim_memset(dashes, '-', (size_t)level);
+       dashes[level] = NUL;
+       set_vim_var_string(VV_FOLDDASHES, dashes, -1);
+*** ../vim-7.2.277/src/version.c       2009-11-03 16:22:59.000000000 +0100
+--- src/version.c      2009-11-03 16:29:08.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     278,
+  /**/
+
+-- 
+BRIDGEKEEPER: What is the air-speed velocity of an unladen swallow?
+ARTHUR:       What do you mean?  An African or European swallow?
+BRIDGEKEEPER: Er ...  I don't know that ... Aaaaarrrrrrggghhh!
+   BRIDGEKEEPER is cast into the gorge.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.279 b/7.2.279
new file mode 100644 (file)
index 0000000..bdf58fc
--- /dev/null
+++ b/7.2.279
@@ -0,0 +1,120 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.279
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.279
+Problem:    Invalid memory read with visual mode "r". (Dominique Pelle)
+Solution:   Make sure the cursor position is valid.  Don't check the cursor
+           position but the position being used.  And make sure we get the
+           right line.
+Files:     src/misc2.c, src/ops.c
+
+
+*** ../vim-7.2.278/src/misc2.c 2009-05-16 21:06:36.000000000 +0200
+--- src/misc2.c        2009-11-03 16:43:10.000000000 +0100
+***************
+*** 156,162 ****
+                   || ((ve_flags & VE_ONEMORE) && wcol < MAXCOL)
+  #endif
+                   ;
+!     line = ml_get_curline();
+  
+      if (wcol >= MAXCOL)
+      {
+--- 156,162 ----
+                   || ((ve_flags & VE_ONEMORE) && wcol < MAXCOL)
+  #endif
+                   ;
+!     line = ml_get_buf(curbuf, pos->lnum, FALSE);
+  
+      if (wcol >= MAXCOL)
+      {
+***************
+*** 332,340 ****
+  #endif
+  
+  #ifdef FEAT_MBYTE
+!     /* prevent cursor from moving on the trail byte */
+      if (has_mbyte)
+!      mb_adjust_cursor();
+  #endif
+  
+      if (col < wcol)
+--- 332,340 ----
+  #endif
+  
+  #ifdef FEAT_MBYTE
+!     /* prevent from moving onto a trail byte */
+      if (has_mbyte)
+!      mb_adjustpos(pos);
+  #endif
+  
+      if (col < wcol)
+*** ../vim-7.2.278/src/ops.c   2009-09-30 15:15:33.000000000 +0200
+--- src/ops.c  2009-11-03 15:18:50.000000000 +0100
+***************
+*** 2020,2025 ****
+--- 2020,2026 ----
+       bd.is_MAX = (curwin->w_curswant == MAXCOL);
+       for ( ; curwin->w_cursor.lnum <= oap->end.lnum; ++curwin->w_cursor.lnum)
+       {
++          curwin->w_cursor.col = 0;  /* make sure cursor position is valid */
+           block_prep(oap, &bd, curwin->w_cursor.lnum, TRUE);
+           if (bd.textlen == 0 && (!virtual_op || bd.is_MAX))
+               continue;           /* nothing to replace */
+***************
+*** 2035,2040 ****
+--- 2036,2042 ----
+           {
+               pos_T vpos;
+  
++              vpos.lnum = curwin->w_cursor.lnum;
+               getvpos(&vpos, oap->start_vcol);
+               bd.startspaces += vpos.coladd;
+               n = bd.startspaces;
+***************
+*** 2693,2703 ****
+                        * initial coladd offset as part of "startspaces" */
+                       if (bd.is_short)
+                       {
+!                          linenr_T lnum = curwin->w_cursor.lnum;
+! 
+!                          curwin->w_cursor.lnum = linenr;
+                           (void)getvpos(&vpos, oap->start_vcol);
+-                          curwin->w_cursor.lnum = lnum;
+                       }
+                       else
+                           vpos.coladd = 0;
+--- 2695,2702 ----
+                        * initial coladd offset as part of "startspaces" */
+                       if (bd.is_short)
+                       {
+!                          vpos.lnum = linenr;
+                           (void)getvpos(&vpos, oap->start_vcol);
+                       }
+                       else
+                           vpos.coladd = 0;
+*** ../vim-7.2.278/src/version.c       2009-11-03 16:29:48.000000000 +0100
+--- src/version.c      2009-11-03 16:41:53.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     279,
+  /**/
+
+-- 
+BEDEVERE: How do you know so much about swallows?
+ARTHUR:   Well you have to know these things when you're a king, you know.
+                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.280 b/7.2.280
new file mode 100644 (file)
index 0000000..6223ac4
--- /dev/null
+++ b/7.2.280
@@ -0,0 +1,251 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.280
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.280
+Problem:    A redraw in a custom statusline with %! may cause a crash.
+            (Yukihiro Nakadaira)
+Solution:   Make a copy of 'statusline'.  Also fix typo in function name
+            redraw_custum_statusline. (party by Dominique Pelle)
+Files:      src/screen.c
+
+
+*** ../vim-7.2.279/src/screen.c        2009-07-29 16:13:35.000000000 +0200
+--- src/screen.c       2009-11-03 17:13:16.000000000 +0100
+***************
+*** 132,138 ****
+  static void draw_vsep_win __ARGS((win_T *wp, int row));
+  #endif
+  #ifdef FEAT_STL_OPT
+! static void redraw_custum_statusline __ARGS((win_T *wp));
+  #endif
+  #ifdef FEAT_SEARCH_EXTRA
+  #define SEARCH_HL_PRIORITY 0
+--- 132,138 ----
+  static void draw_vsep_win __ARGS((win_T *wp, int row));
+  #endif
+  #ifdef FEAT_STL_OPT
+! static void redraw_custom_statusline __ARGS((win_T *wp));
+  #endif
+  #ifdef FEAT_SEARCH_EXTRA
+  #define SEARCH_HL_PRIORITY 0
+***************
+*** 5772,5778 ****
+      else if (*p_stl != NUL || *wp->w_p_stl != NUL)
+      {
+       /* redraw custom status line */
+!      redraw_custum_statusline(wp);
+      }
+  #endif
+      else
+--- 5794,5800 ----
+      else if (*p_stl != NUL || *wp->w_p_stl != NUL)
+      {
+       /* redraw custom status line */
+!      redraw_custom_statusline(wp);
+      }
+  #endif
+      else
+***************
+*** 5897,5914 ****
+   * errors encountered.
+   */
+      static void
+! redraw_custum_statusline(wp)
+      win_T        *wp;
+  {
+!     int      save_called_emsg = called_emsg;
+  
+      called_emsg = FALSE;
+      win_redr_custom(wp, FALSE);
+      if (called_emsg)
+       set_string_option_direct((char_u *)"statusline", -1,
+               (char_u *)"", OPT_FREE | (*wp->w_p_stl != NUL
+                                       ? OPT_LOCAL : OPT_GLOBAL), SID_ERROR);
+      called_emsg |= save_called_emsg;
+  }
+  #endif
+  
+--- 5919,5949 ----
+   * errors encountered.
+   */
+      static void
+! redraw_custom_statusline(wp)
+      win_T        *wp;
+  {
+!     static int           entered = FALSE;
+!     int                  save_called_emsg = called_emsg;
+! 
+!     /* When called recursively return.  This can happen when the statusline
+!      * contains an expression that triggers a redraw. */
+!     if (entered)
+!      return;
+!     entered = TRUE;
+  
+      called_emsg = FALSE;
+      win_redr_custom(wp, FALSE);
+      if (called_emsg)
++     {
++      /* When there is an error disable the statusline, otherwise the
++       * display is messed up with errors and a redraw triggers the problem
++       * again and again. */
+       set_string_option_direct((char_u *)"statusline", -1,
+               (char_u *)"", OPT_FREE | (*wp->w_p_stl != NUL
+                                       ? OPT_LOCAL : OPT_GLOBAL), SID_ERROR);
++     }
+      called_emsg |= save_called_emsg;
++     entered = FALSE;
+  }
+  #endif
+  
+***************
+*** 6016,6021 ****
+--- 6051,6057 ----
+      int              len;
+      int              fillchar;
+      char_u   buf[MAXPATHL];
++     char_u   *stl;
+      char_u   *p;
+      struct   stl_hlrec hltab[STL_MAX_ITEM];
+      struct   stl_hlrec tabtab[STL_MAX_ITEM];
+***************
+*** 6025,6031 ****
+      if (wp == NULL)
+      {
+       /* Use 'tabline'.  Always at the first line of the screen. */
+!      p = p_tal;
+       row = 0;
+       fillchar = ' ';
+       attr = hl_attr(HLF_TPF);
+--- 6061,6067 ----
+      if (wp == NULL)
+      {
+       /* Use 'tabline'.  Always at the first line of the screen. */
+!      stl = p_tal;
+       row = 0;
+       fillchar = ' ';
+       attr = hl_attr(HLF_TPF);
+***************
+*** 6042,6058 ****
+  
+       if (draw_ruler)
+       {
+!          p = p_ruf;
+           /* advance past any leading group spec - implicit in ru_col */
+!          if (*p == '%')
+           {
+!              if (*++p == '-')
+!                  p++;
+!              if (atoi((char *) p))
+!                  while (VIM_ISDIGIT(*p))
+!                      p++;
+!              if (*p++ != '(')
+!                  p = p_ruf;
+           }
+  #ifdef FEAT_VERTSPLIT
+           col = ru_col - (Columns - W_WIDTH(wp));
+--- 6078,6094 ----
+  
+       if (draw_ruler)
+       {
+!          stl = p_ruf;
+           /* advance past any leading group spec - implicit in ru_col */
+!          if (*stl == '%')
+           {
+!              if (*++stl == '-')
+!                  stl++;
+!              if (atoi((char *)stl))
+!                  while (VIM_ISDIGIT(*stl))
+!                      stl++;
+!              if (*stl++ != '(')
+!                  stl = p_ruf;
+           }
+  #ifdef FEAT_VERTSPLIT
+           col = ru_col - (Columns - W_WIDTH(wp));
+***************
+*** 6081,6089 ****
+       else
+       {
+           if (*wp->w_p_stl != NUL)
+!              p = wp->w_p_stl;
+           else
+!              p = p_stl;
+  # ifdef FEAT_EVAL
+           use_sandbox = was_set_insecurely((char_u *)"statusline",
+                                        *wp->w_p_stl == NUL ? 0 : OPT_LOCAL);
+--- 6117,6125 ----
+       else
+       {
+           if (*wp->w_p_stl != NUL)
+!              stl = wp->w_p_stl;
+           else
+!              stl = p_stl;
+  # ifdef FEAT_EVAL
+           use_sandbox = was_set_insecurely((char_u *)"statusline",
+                                        *wp->w_p_stl == NUL ? 0 : OPT_LOCAL);
+***************
+*** 6098,6107 ****
+      if (maxwidth <= 0)
+       return;
+  
+      width = build_stl_str_hl(wp == NULL ? curwin : wp,
+                               buf, sizeof(buf),
+!                              p, use_sandbox,
+                               fillchar, maxwidth, hltab, tabtab);
+      len = (int)STRLEN(buf);
+  
+      while (width < maxwidth && len < (int)sizeof(buf) - 1)
+--- 6134,6147 ----
+      if (maxwidth <= 0)
+       return;
+  
++     /* Make a copy, because the statusline may include a function call that
++      * might change the option value and free the memory. */
++     stl = vim_strsave(stl);
+      width = build_stl_str_hl(wp == NULL ? curwin : wp,
+                               buf, sizeof(buf),
+!                              stl, use_sandbox,
+                               fillchar, maxwidth, hltab, tabtab);
++     vim_free(stl);
+      len = (int)STRLEN(buf);
+  
+      while (width < maxwidth && len < (int)sizeof(buf) - 1)
+***************
+*** 9465,9471 ****
+  #if defined(FEAT_STL_OPT) && defined(FEAT_WINDOWS)
+      if ((*p_stl != NUL || *curwin->w_p_stl != NUL) && curwin->w_status_height)
+      {
+!      redraw_custum_statusline(curwin);
+      }
+      else
+  #endif
+--- 9505,9511 ----
+  #if defined(FEAT_STL_OPT) && defined(FEAT_WINDOWS)
+      if ((*p_stl != NUL || *curwin->w_p_stl != NUL) && curwin->w_status_height)
+      {
+!      redraw_custom_statusline(curwin);
+      }
+      else
+  #endif
+*** ../vim-7.2.279/src/version.c       2009-11-03 16:44:04.000000000 +0100
+--- src/version.c      2009-11-03 17:15:35.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     280,
+  /**/
+
+-- 
+Every exit is an entrance into something else.
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.281 b/7.2.281
new file mode 100644 (file)
index 0000000..f73d7a5
--- /dev/null
+++ b/7.2.281
@@ -0,0 +1,81 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.281
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.281
+Problem:    'cursorcolumn' highlighting is wrong in diff mode.
+Solution:   Adjust the column computation. (Lech Lorens)
+Files:     src/screen.c
+
+
+*** ../vim-7.2.280/src/screen.c        2009-11-03 17:20:18.000000000 +0100
+--- src/screen.c       2009-11-03 17:13:16.000000000 +0100
+***************
+*** 3008,3018 ****
+           mb_ptr_adv(ptr);
+       }
+  
+! #ifdef FEAT_VIRTUALEDIT
+!      /* When 'virtualedit' is set the end of the line may be before the
+!       * start of the displayed part. */
+!      if (vcol < v && *ptr == NUL && virtual_active())
+           vcol = v;
+  #endif
+  
+       /* Handle a character that's not completely on the screen: Put ptr at
+--- 3008,3040 ----
+           mb_ptr_adv(ptr);
+       }
+  
+! #if defined(FEAT_SYN_HL) || defined(FEAT_VIRTUALEDIT) || defined(FEAT_VISUAL)
+!      /* When:
+!       * - 'cuc' is set, or
+!       * - 'virtualedit' is set, or
+!       * - the visual mode is active,
+!       * the end of the line may be before the start of the displayed part.
+!       */
+!      if (vcol < v && (
+! # ifdef FEAT_SYN_HL
+!           wp->w_p_cuc
+! #  if defined(FEAT_VIRTUALEDIT) || defined(FEAT_VISUAL)
+!           ||
+! #  endif
+! # endif
+! # ifdef FEAT_VIRTUALEDIT
+!           virtual_active()
+! #  ifdef FEAT_VISUAL
+!           ||
+! #  endif
+! # endif
+! # ifdef FEAT_VISUAL
+!           (VIsual_active && wp->w_buffer == curwin->w_buffer)
+! # endif
+!           ))
+!      {
+           vcol = v;
++      }
+  #endif
+  
+       /* Handle a character that's not completely on the screen: Put ptr at
+*** ../vim-7.2.280/src/version.c       2009-11-03 17:20:18.000000000 +0100
+--- src/version.c      2009-11-03 17:34:54.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     281,
+  /**/
+
+-- 
+Every person is responsible for the choices he makes.
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.282 b/7.2.282
new file mode 100644 (file)
index 0000000..dd4dc64
--- /dev/null
+++ b/7.2.282
@@ -0,0 +1,47 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.282
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.282
+Problem:    A fold can't be closed.
+Solution:   Initialize fd_small to MAYBE. (Lech Lorens)
+Files:     src/fold.c
+
+
+*** ../vim-7.2.281/src/fold.c  2009-11-03 16:29:48.000000000 +0100
+--- src/fold.c 2009-11-03 17:41:50.000000000 +0100
+***************
+*** 2851,2856 ****
+--- 2851,2858 ----
+      fp[1].fd_top = bot + 1;
+      fp[1].fd_len = fp->fd_len - (fp[1].fd_top - fp->fd_top);
+      fp[1].fd_flags = fp->fd_flags;
++     fp[1].fd_small = MAYBE;
++     fp->fd_small = MAYBE;
+  
+      /* Move nested folds below bot to new fold.  There can't be
+       * any between top and bot, they have been removed by the caller. */
+*** ../vim-7.2.281/src/version.c       2009-11-03 17:36:09.000000000 +0100
+--- src/version.c      2009-11-03 17:59:12.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     282,
+  /**/
+
+-- 
+You can be stopped by the police for biking over 65 miles per hour.
+You are not allowed to walk across a street on your hands.
+               [real standing laws in Connecticut, United States of America]
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.283 b/7.2.283
new file mode 100644 (file)
index 0000000..0d6f605
--- /dev/null
+++ b/7.2.283
@@ -0,0 +1,73 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.283
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.283
+Problem:    Changing font while the window is maximized doesn't keep the
+           window maximized.
+Solution:   Recompute number of lines and columns after changing font. (James
+           Vega)
+Files:     src/gui_gtk_x11.c
+
+
+*** ../vim-7.2.282/src/gui_gtk_x11.c   2009-09-23 18:14:13.000000000 +0200
+--- src/gui_gtk_x11.c  2009-11-03 17:56:27.000000000 +0100
+***************
+*** 5267,5274 ****
+  # endif
+  #endif /* !HAVE_GTK2 */
+  
+!     /* Preserve the logical dimensions of the screen. */
+!     update_window_manager_hints(0, 0);
+  
+      return OK;
+  }
+--- 5267,5290 ----
+  # endif
+  #endif /* !HAVE_GTK2 */
+  
+! #ifdef HAVE_GTK2
+!     if (gui_mch_maximized())
+!     {
+!      int w, h;
+! 
+!      /* Update lines and columns in accordance with the new font, keep the
+!       * window maximized. */
+!      gtk_window_get_size(GTK_WINDOW(gui.mainwin), &w, &h);
+!      w -= get_menu_tool_width();
+!      h -= get_menu_tool_height();
+!      gui_resize_shell(w, h);
+!     }
+!     else
+! #endif
+!     {
+!      /* Preserve the logical dimensions of the screen. */
+!      update_window_manager_hints(0, 0);
+!     }
+  
+      return OK;
+  }
+*** ../vim-7.2.282/src/version.c       2009-11-03 18:04:26.000000000 +0100
+--- src/version.c      2009-11-03 18:11:53.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     283,
+  /**/
+
+-- 
+If an elephant is left tied to a parking meter, the parking fee has to be paid
+just as it would for a vehicle.
+               [real standing law in Florida, United States of America]
+
+ /// Bram Moolenaar -- Bram@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    ///
diff --git a/7.2.284 b/7.2.284
new file mode 100644 (file)
index 0000000..5b4336b
--- /dev/null
+++ b/7.2.284
@@ -0,0 +1,52 @@
+To: vim-dev@vim.org
+Subject: Patch 7.2.284
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.2.284
+Problem:    When editing the same buffer in two windows, one with folding,
+           display may be wrong after changes.
+Solution:   Call set_topline() to take care of side effects. (Lech Lorens)
+Files:     src/misc1.c
+
+
+*** ../vim-7.2.283/src/misc1.c 2009-07-22 11:03:38.000000000 +0200
+--- src/misc1.c        2009-11-03 18:38:15.000000000 +0100
+***************
+*** 2886,2891 ****
+--- 2886,2898 ----
+                   }
+  #endif
+               }
++ 
++ #ifdef FEAT_FOLDING
++          /* Take care of side effects for setting w_topline when folds have
++           * changed.  Esp. when the buffer was changed in another window. */
++          if (hasAnyFolding(wp))
++              set_topline(wp, wp->w_topline);
++ #endif
+       }
+      }
+  
+*** ../vim-7.2.283/src/version.c       2009-11-03 18:13:36.000000000 +0100
+--- src/version.c      2009-11-03 18:44:12.000000000 +0100
+***************
+*** 678,679 ****
+--- 678,681 ----
+  {   /* Add new patch number below this line */
++ /**/
++     284,
+  /**/
+
+-- 
+Men may not be seen publicly in any kind of strapless gown.
+               [real standing law in Florida, United States of America]
+
+ /// Bram Moolenaar -- Bram@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    ///
This page took 0.092604 seconds and 4 git commands to generate.