summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.454
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/vim/patches/7.3.454')
-rw-r--r--source/ap/vim/patches/7.3.45484
1 files changed, 84 insertions, 0 deletions
diff --git a/source/ap/vim/patches/7.3.454 b/source/ap/vim/patches/7.3.454
new file mode 100644
index 000000000..8658926af
--- /dev/null
+++ b/source/ap/vim/patches/7.3.454
@@ -0,0 +1,84 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 7.3.454
+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.3.454
+Problem: Re-allocating memory slows Vim down.
+Solution: Use realloc() in ga_grow(). (Dominique Pelle)
+Files: src/misc2.c
+
+
+*** ../vim-7.3.453/src/misc2.c 2012-02-22 14:58:24.000000000 +0100
+--- src/misc2.c 2012-02-22 18:07:45.000000000 +0100
+***************
+*** 2064,2087 ****
+ garray_T *gap;
+ int n;
+ {
+! size_t len;
+ char_u *pp;
+
+ if (gap->ga_maxlen - gap->ga_len < n)
+ {
+ if (n < gap->ga_growsize)
+ n = gap->ga_growsize;
+! len = gap->ga_itemsize * (gap->ga_len + n);
+! pp = alloc_clear((unsigned)len);
+ if (pp == NULL)
+ return FAIL;
+ gap->ga_maxlen = gap->ga_len + n;
+- if (gap->ga_data != NULL)
+- {
+- mch_memmove(pp, gap->ga_data,
+- (size_t)(gap->ga_itemsize * gap->ga_len));
+- vim_free(gap->ga_data);
+- }
+ gap->ga_data = pp;
+ }
+ return OK;
+--- 2064,2085 ----
+ garray_T *gap;
+ int n;
+ {
+! size_t old_len;
+! size_t new_len;
+ char_u *pp;
+
+ if (gap->ga_maxlen - gap->ga_len < n)
+ {
+ if (n < gap->ga_growsize)
+ n = gap->ga_growsize;
+! new_len = gap->ga_itemsize * (gap->ga_len + n);
+! pp = (gap->ga_data == NULL)
+! ? alloc(new_len) : vim_realloc(gap->ga_data, new_len);
+ if (pp == NULL)
+ return FAIL;
++ old_len = gap->ga_itemsize * gap->ga_maxlen;
++ vim_memset(pp + old_len, 0, new_len - old_len);
+ gap->ga_maxlen = gap->ga_len + n;
+ gap->ga_data = pp;
+ }
+ return OK;
+*** ../vim-7.3.453/src/version.c 2012-02-22 17:58:00.000000000 +0100
+--- src/version.c 2012-02-22 18:09:42.000000000 +0100
+***************
+*** 716,717 ****
+--- 716,719 ----
+ { /* Add new patch number below this line */
++ /**/
++ 454,
+ /**/
+
+--
+From "know your smileys":
+ (X0||) Double hamburger with lettuce and tomato
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- 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 ///