summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.1384
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.1384')
-rw-r--r--data/vim/patches/8.1.13844519
1 files changed, 4519 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.1384 b/data/vim/patches/8.1.1384
new file mode 100644
index 000000000..85f0e37ae
--- /dev/null
+++ b/data/vim/patches/8.1.1384
@@ -0,0 +1,4519 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 8.1.1384
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 8.1.1384
+Problem: Using "int" for alloc() often results in compiler warnings.
+Solution: Use "size_t" and remove type casts. Remove alloc_check(), Vim
+ only works with 32 bit ints anyway.
+Files: src/misc2.c, src/proto/misc2.pro, src/autocmd.c, src/buffer.c,
+ src/change.c, src/channel.c, src/charset.c, src/debugger.c,
+ src/dict.c, src/diff.c, src/digraph.c, src/edit.c, src/eval.c,
+ src/evalfunc.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c,
+ src/ex_eval.c, src/ex_getln.c, src/fileio.c, src/findfile.c,
+ src/fold.c, src/getchar.c, src/gui.c, src/gui_at_fs.c,
+ src/gui_gtk.c, src/gui_gtk_x11.c, src/gui_motif.c, src/gui_w32.c,
+ src/hashtab.c, src/if_cscope.c, src/if_perlsfio.c,
+ src/if_python3.c, src/if_xcmdsrv.c, src/indent.c, src/insexpand.c,
+ src/main.c, src/mbyte.c, src/memfile.c, src/memline.c, src/menu.c,
+ src/message.c, src/misc1.c, src/netbeans.c, src/ops.c,
+ src/option.c, src/os_amiga.c, src/os_mswin.c, src/os_unix.c,
+ src/os_vms.c, src/os_win32.c, src/quickfix.c, src/regexp.c,
+ src/screen.c, src/spell.c, src/spellfile.c, src/syntax.c,
+ src/term.c, src/undo.c, src/usercmd.c, src/userfunc.c,
+ src/version.c, src/winclip.c
+
+
+*** ../vim-8.1.1383/src/misc2.c 2019-05-19 19:59:30.164255569 +0200
+--- src/misc2.c 2019-05-24 18:27:24.407952680 +0200
+***************
+*** 711,717 ****
+ }
+
+ static void
+! mem_pre_alloc_l(long_u *sizep)
+ {
+ *sizep += sizeof(size_t);
+ }
+--- 711,717 ----
+ }
+
+ static void
+! mem_pre_alloc_l(size_t *sizep)
+ {
+ *sizep += sizeof(size_t);
+ }
+***************
+*** 796,802 ****
+
+ #ifdef FEAT_EVAL
+ int
+! alloc_does_fail(long_u size)
+ {
+ if (alloc_fail_countdown == 0)
+ {
+--- 796,802 ----
+
+ #ifdef FEAT_EVAL
+ int
+! alloc_does_fail(size_t size)
+ {
+ if (alloc_fail_countdown == 0)
+ {
+***************
+*** 818,856 ****
+ #define KEEP_ROOM_KB (KEEP_ROOM / 1024L)
+
+ /*
+! * Note: if unsigned is 16 bits we can only allocate up to 64K with alloc().
+! * Use lalloc for larger blocks.
+ */
+ char_u *
+! alloc(unsigned size)
+ {
+! return (lalloc((long_u)size, TRUE));
+ }
+
+ /*
+ * alloc() with an ID for alloc_fail().
+ */
+ char_u *
+! alloc_id(unsigned size, alloc_id_T id UNUSED)
+ {
+ #ifdef FEAT_EVAL
+! if (alloc_fail_id == id && alloc_does_fail((long_u)size))
+ return NULL;
+ #endif
+! return (lalloc((long_u)size, TRUE));
+ }
+
+ /*
+ * Allocate memory and set all bytes to zero.
+ */
+ char_u *
+! alloc_clear(unsigned size)
+ {
+ char_u *p;
+
+! p = lalloc((long_u)size, TRUE);
+ if (p != NULL)
+! (void)vim_memset(p, 0, (size_t)size);
+ return p;
+ }
+
+--- 818,856 ----
+ #define KEEP_ROOM_KB (KEEP_ROOM / 1024L)
+
+ /*
+! * The normal way to allocate memory. This handles an out-of-memory situation
+! * as well as possible, still returns NULL when we're completely out.
+ */
+ char_u *
+! alloc(size_t size)
+ {
+! return lalloc(size, TRUE);
+ }
+
+ /*
+ * alloc() with an ID for alloc_fail().
+ */
+ char_u *
+! alloc_id(size_t size, alloc_id_T id UNUSED)
+ {
+ #ifdef FEAT_EVAL
+! if (alloc_fail_id == id && alloc_does_fail(size))
+ return NULL;
+ #endif
+! return lalloc(size, TRUE);
+ }
+
+ /*
+ * Allocate memory and set all bytes to zero.
+ */
+ char_u *
+! alloc_clear(size_t size)
+ {
+ char_u *p;
+
+! p = lalloc(size, TRUE);
+ if (p != NULL)
+! (void)vim_memset(p, 0, size);
+ return p;
+ }
+
+***************
+*** 858,901 ****
+ * Same as alloc_clear() but with allocation id for testing
+ */
+ char_u *
+! alloc_clear_id(unsigned size, alloc_id_T id UNUSED)
+ {
+ #ifdef FEAT_EVAL
+! if (alloc_fail_id == id && alloc_does_fail((long_u)size))
+ return NULL;
+ #endif
+ return alloc_clear(size);
+ }
+
+ /*
+- * alloc() with check for maximum line length
+- */
+- char_u *
+- alloc_check(unsigned size)
+- {
+- #if !defined(UNIX)
+- if (sizeof(int) == 2 && size > 0x7fff)
+- {
+- /* Don't hide this message */
+- emsg_silent = 0;
+- emsg(_("E340: Line is becoming too long"));
+- return NULL;
+- }
+- #endif
+- return (lalloc((long_u)size, TRUE));
+- }
+-
+- /*
+ * Allocate memory like lalloc() and set all bytes to zero.
+ */
+ char_u *
+! lalloc_clear(long_u size, int message)
+ {
+ char_u *p;
+
+ p = (lalloc(size, message));
+ if (p != NULL)
+! (void)vim_memset(p, 0, (size_t)size);
+ return p;
+ }
+
+--- 858,883 ----
+ * Same as alloc_clear() but with allocation id for testing
+ */
+ char_u *
+! alloc_clear_id(size_t size, alloc_id_T id UNUSED)
+ {
+ #ifdef FEAT_EVAL
+! if (alloc_fail_id == id && alloc_does_fail(size))
+ return NULL;
+ #endif
+ return alloc_clear(size);
+ }
+
+ /*
+ * Allocate memory like lalloc() and set all bytes to zero.
+ */
+ char_u *
+! lalloc_clear(size_t size, int message)
+ {
+ char_u *p;
+
+ p = (lalloc(size, message));
+ if (p != NULL)
+! (void)vim_memset(p, 0, size);
+ return p;
+ }
+
+***************
+*** 904,924 ****
+ * This is used often, KEEP IT FAST!
+ */
+ char_u *
+! lalloc(long_u size, int message)
+ {
+ char_u *p; /* pointer to new storage space */
+ static int releasing = FALSE; /* don't do mf_release_all() recursive */
+ int try_again;
+ #if defined(HAVE_AVAIL_MEM)
+! static long_u allocated = 0; /* allocated since last avail check */
+ #endif
+
+! /* Safety check for allocating zero bytes */
+ if (size == 0)
+ {
+! /* Don't hide this message */
+ emsg_silent = 0;
+! siemsg(_("E341: Internal error: lalloc(%ld, )"), size);
+ return NULL;
+ }
+
+--- 886,906 ----
+ * This is used often, KEEP IT FAST!
+ */
+ char_u *
+! lalloc(size_t size, int message)
+ {
+ char_u *p; /* pointer to new storage space */
+ static int releasing = FALSE; /* don't do mf_release_all() recursive */
+ int try_again;
+ #if defined(HAVE_AVAIL_MEM)
+! static size_t allocated = 0; /* allocated since last avail check */
+ #endif
+
+! // Safety check for allocating zero bytes
+ if (size == 0)
+ {
+! // Don't hide this message
+ emsg_silent = 0;
+! iemsg(_("E341: Internal error: lalloc(0, )"));
+ return NULL;
+ }
+
+***************
+*** 939,945 ****
+ * allocating KEEP_ROOM amount of memory.
+ * 3. Strict check for available memory: call mch_avail_mem()
+ */
+! if ((p = (char_u *)malloc((size_t)size)) != NULL)
+ {
+ #ifndef HAVE_AVAIL_MEM
+ /* 1. No check for available memory: Just return. */
+--- 921,927 ----
+ * allocating KEEP_ROOM amount of memory.
+ * 3. Strict check for available memory: call mch_avail_mem()
+ */
+! if ((p = (char_u *)malloc(size)) != NULL)
+ {
+ #ifndef HAVE_AVAIL_MEM
+ /* 1. No check for available memory: Just return. */
+***************
+*** 983,989 ****
+
+ theend:
+ #ifdef MEM_PROFILE
+! mem_post_alloc((void **)&p, (size_t)size);
+ #endif
+ return p;
+ }
+--- 965,971 ----
+
+ theend:
+ #ifdef MEM_PROFILE
+! mem_post_alloc((void **)&p, size);
+ #endif
+ return p;
+ }
+***************
+*** 993,1005 ****
+ */
+ #if defined(FEAT_SIGNS) || defined(PROTO)
+ char_u *
+! lalloc_id(long_u size, int message, alloc_id_T id UNUSED)
+ {
+ #ifdef FEAT_EVAL
+ if (alloc_fail_id == id && alloc_does_fail(size))
+ return NULL;
+ #endif
+! return (lalloc((long_u)size, message));
+ }
+ #endif
+
+--- 975,987 ----
+ */
+ #if defined(FEAT_SIGNS) || defined(PROTO)
+ char_u *
+! lalloc_id(size_t size, int message, alloc_id_T id UNUSED)
+ {
+ #ifdef FEAT_EVAL
+ if (alloc_fail_id == id && alloc_does_fail(size))
+ return NULL;
+ #endif
+! return (lalloc(size, message));
+ }
+ #endif
+
+***************
+*** 1028,1034 ****
+ * Did_outofmem_msg is reset when a character is read.
+ */
+ void
+! do_outofmem_msg(long_u size)
+ {
+ if (!did_outofmem_msg)
+ {
+--- 1010,1016 ----
+ * Did_outofmem_msg is reset when a character is read.
+ */
+ void
+! do_outofmem_msg(size_t size)
+ {
+ if (!did_outofmem_msg)
+ {
+***************
+*** 1039,1045 ****
+ * message fails, e.g. when setting v:errmsg. */
+ did_outofmem_msg = TRUE;
+
+! semsg(_("E342: Out of memory! (allocating %lu bytes)"), size);
+ }
+ }
+
+--- 1021,1027 ----
+ * message fails, e.g. when setting v:errmsg. */
+ did_outofmem_msg = TRUE;
+
+! semsg(_("E342: Out of memory! (allocating %lu bytes)"), (long_u)size);
+ }
+ }
+
+***************
+*** 1288,1299 ****
+ vim_strsave(char_u *string)
+ {
+ char_u *p;
+! unsigned len;
+
+! len = (unsigned)STRLEN(string) + 1;
+ p = alloc(len);
+ if (p != NULL)
+! mch_memmove(p, string, (size_t)len);
+ return p;
+ }
+
+--- 1270,1281 ----
+ vim_strsave(char_u *string)
+ {
+ char_u *p;
+! size_t len;
+
+! len = STRLEN(string) + 1;
+ p = alloc(len);
+ if (p != NULL)
+! mch_memmove(p, string, len);
+ return p;
+ }
+
+***************
+*** 1308,1314 ****
+ {
+ char_u *p;
+
+! p = alloc((unsigned)(len + 1));
+ if (p != NULL)
+ {
+ STRNCPY(p, string, len);
+--- 1290,1296 ----
+ {
+ char_u *p;
+
+! p = alloc((size_t)(len + 1));
+ if (p != NULL)
+ {
+ STRNCPY(p, string, len);
+***************
+*** 1322,1333 ****
+ * Returns NULL when out of memory.
+ */
+ char_u *
+! vim_memsave(char_u *p, int len)
+ {
+! char_u *ret = alloc((unsigned)len);
+
+ if (ret != NULL)
+! mch_memmove(ret, p, (size_t)len);
+ return ret;
+ }
+
+--- 1304,1315 ----
+ * Returns NULL when out of memory.
+ */
+ char_u *
+! vim_memsave(char_u *p, size_t len)
+ {
+! char_u *ret = alloc(len);
+
+ if (ret != NULL)
+! mch_memmove(ret, p, len);
+ return ret;
+ }
+
+***************
+*** 1622,1628 ****
+ newl = utf_char2len(uc);
+ if (newl != l)
+ {
+! s = alloc((unsigned)STRLEN(res) + 1 + newl - l);
+ if (s == NULL)
+ {
+ vim_free(res);
+--- 1604,1610 ----
+ newl = utf_char2len(uc);
+ if (newl != l)
+ {
+! s = alloc(STRLEN(res) + 1 + newl - l);
+ if (s == NULL)
+ {
+ vim_free(res);
+***************
+*** 1689,1695 ****
+ newl = utf_char2len(lc);
+ if (newl != l)
+ {
+! s = alloc((unsigned)STRLEN(res) + 1 + newl - l);
+ if (s == NULL)
+ {
+ vim_free(res);
+--- 1671,1677 ----
+ newl = utf_char2len(lc);
+ if (newl != l)
+ {
+! s = alloc(STRLEN(res) + 1 + newl - l);
+ if (s == NULL)
+ {
+ vim_free(res);
+***************
+*** 2077,2083 ****
+ n = gap->ga_growsize;
+ new_len = gap->ga_itemsize * (gap->ga_len + n);
+ pp = (gap->ga_data == NULL)
+! ? alloc((unsigned)new_len) : vim_realloc(gap->ga_data, new_len);
+ if (pp == NULL)
+ return FAIL;
+ old_len = gap->ga_itemsize * gap->ga_maxlen;
+--- 2059,2065 ----
+ 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;
+***************
+*** 3261,3267 ****
+ if (ecmd == NULL)
+ ecmd = cmd;
+ }
+! ncmd = alloc((unsigned)(STRLEN(ecmd) + STRLEN(p_sxq) * 2 + 1));
+ if (ncmd != NULL)
+ {
+ STRCPY(ncmd, p_sxq);
+--- 3243,3249 ----
+ if (ecmd == NULL)
+ ecmd = cmd;
+ }
+! ncmd = alloc(STRLEN(ecmd) + STRLEN(p_sxq) * 2 + 1);
+ if (ncmd != NULL)
+ {
+ STRCPY(ncmd, p_sxq);
+***************
+*** 3896,3902 ****
+ int i, j;
+ int gap;
+
+! buf = alloc((unsigned)elm_size);
+ if (buf == NULL)
+ return;
+
+--- 3878,3884 ----
+ int i, j;
+ int gap;
+
+! buf = alloc(elm_size);
+ if (buf == NULL)
+ return;
+
+***************
+*** 4073,4079 ****
+ if (moreenv() < 0)
+ return -1;
+ }
+! p = (char *)alloc((unsigned)(strlen(string) + 1));
+ if (p == NULL) /* not enough core */
+ return -1;
+ environ[i + 1] = 0; /* new end of env. */
+--- 4055,4061 ----
+ if (moreenv() < 0)
+ return -1;
+ }
+! p = (char *)alloc(strlen(string) + 1);
+ if (p == NULL) /* not enough core */
+ return -1;
+ environ[i + 1] = 0; /* new end of env. */
+***************
+*** 4121,4133 ****
+ ;
+
+ esize = i + EXTRASIZE + 1;
+! env = (char **)alloc((unsigned)(esize * sizeof (elem)));
+ if (env == NULL)
+ return -1;
+
+ for (i = 0; environ[i]; i++)
+ {
+! elem = (char *)alloc((unsigned)(strlen(environ[i]) + 1));
+ if (elem == NULL)
+ return -1;
+ env[i] = elem;
+--- 4103,4115 ----
+ ;
+
+ esize = i + EXTRASIZE + 1;
+! env = (char **)alloc(esize * sizeof (elem));
+ if (env == NULL)
+ return -1;
+
+ for (i = 0; environ[i]; i++)
+ {
+! elem = (char *)alloc(strlen(environ[i]) + 1);
+ if (elem == NULL)
+ return -1;
+ env[i] = elem;
+***************
+*** 4310,4316 ****
+ int c;
+
+ /* allocate memory */
+! str = alloc((unsigned)cnt + 1);
+ if (str != NULL)
+ {
+ /* Read the string. Quit when running into the EOF. */
+--- 4292,4298 ----
+ int c;
+
+ /* allocate memory */
+! str = alloc(cnt + 1);
+ if (str != NULL)
+ {
+ /* Read the string. Quit when running into the EOF. */
+***************
+*** 4593,4599 ****
+ }
+ }
+
+! *argv = (char **)alloc((unsigned)((*argc + 4) * sizeof(char *)));
+ if (*argv == NULL) /* out of memory */
+ return FAIL;
+ }
+--- 4575,4581 ----
+ }
+ }
+
+! *argv = (char **)alloc((*argc + 4) * sizeof(char *));
+ if (*argv == NULL) /* out of memory */
+ return FAIL;
+ }
+*** ../vim-8.1.1383/src/proto/misc2.pro 2019-04-28 19:46:17.034060084 +0200
+--- src/proto/misc2.pro 2019-05-24 18:04:26.055775822 +0200
+***************
+*** 20,40 ****
+ void adjust_cursor_col(void);
+ int leftcol_changed(void);
+ void vim_mem_profile_dump(void);
+! int alloc_does_fail(long_u size);
+! char_u *alloc(unsigned size);
+! char_u *alloc_id(unsigned size, alloc_id_T id);
+! char_u *alloc_clear(unsigned size);
+! char_u *alloc_clear_id(unsigned size, alloc_id_T id);
+! char_u *alloc_check(unsigned size);
+! char_u *lalloc_clear(long_u size, int message);
+! char_u *lalloc(long_u size, int message);
+! char_u *lalloc_id(long_u size, int message, alloc_id_T id);
+ void *mem_realloc(void *ptr, size_t size);
+! void do_outofmem_msg(long_u size);
+ void free_all_mem(void);
+ char_u *vim_strsave(char_u *string);
+ char_u *vim_strnsave(char_u *string, int len);
+! char_u *vim_memsave(char_u *p, int len);
+ char_u *vim_strsave_escaped(char_u *string, char_u *esc_chars);
+ char_u *vim_strsave_escaped_ext(char_u *string, char_u *esc_chars, int cc, int bsl);
+ int csh_like_shell(void);
+--- 20,39 ----
+ void adjust_cursor_col(void);
+ int leftcol_changed(void);
+ void vim_mem_profile_dump(void);
+! int alloc_does_fail(size_t size);
+! char_u *alloc(size_t size);
+! char_u *alloc_id(size_t size, alloc_id_T id);
+! char_u *alloc_clear(size_t size);
+! char_u *alloc_clear_id(size_t size, alloc_id_T id);
+! char_u *lalloc_clear(size_t size, int message);
+! char_u *lalloc(size_t size, int message);
+! char_u *lalloc_id(size_t size, int message, alloc_id_T id);
+ void *mem_realloc(void *ptr, size_t size);
+! void do_outofmem_msg(size_t size);
+ void free_all_mem(void);
+ char_u *vim_strsave(char_u *string);
+ char_u *vim_strnsave(char_u *string, int len);
+! char_u *vim_memsave(char_u *p, size_t len);
+ char_u *vim_strsave_escaped(char_u *string, char_u *esc_chars);
+ char_u *vim_strsave_escaped_ext(char_u *string, char_u *esc_chars, int cc, int bsl);
+ int csh_like_shell(void);
+*** ../vim-8.1.1383/src/autocmd.c 2019-04-25 22:21:56.931749183 +0200
+--- src/autocmd.c 2019-05-24 18:09:55.101695900 +0200
+***************
+*** 1193,1199 ****
+ return FAIL;
+ }
+
+! ap = (AutoPat *)alloc((unsigned)sizeof(AutoPat));
+ if (ap == NULL)
+ return FAIL;
+ ap->pat = vim_strnsave(pat, patlen);
+--- 1193,1199 ----
+ return FAIL;
+ }
+
+! ap = (AutoPat *)alloc(sizeof(AutoPat));
+ if (ap == NULL)
+ return FAIL;
+ ap->pat = vim_strnsave(pat, patlen);
+***************
+*** 1242,1248 ****
+ prev_ac = &(ap->cmds);
+ while ((ac = *prev_ac) != NULL)
+ prev_ac = &ac->next;
+! ac = (AutoCmd *)alloc((unsigned)sizeof(AutoCmd));
+ if (ac == NULL)
+ return FAIL;
+ ac->cmd = vim_strsave(cmd);
+--- 1242,1248 ----
+ prev_ac = &(ap->cmds);
+ while ((ac = *prev_ac) != NULL)
+ prev_ac = &ac->next;
+! ac = (AutoCmd *)alloc(sizeof(AutoCmd));
+ if (ac == NULL)
+ return FAIL;
+ ac->cmd = vim_strsave(cmd);
+***************
+*** 2303,2310 ****
+ {
+ name = event_nr2name(apc->event);
+ s = _("%s Autocommands for \"%s\"");
+! sourcing_name = alloc((unsigned)(STRLEN(s)
+! + STRLEN(name) + ap->patlen + 1));
+ if (sourcing_name != NULL)
+ {
+ sprintf((char *)sourcing_name, s,
+--- 2303,2310 ----
+ {
+ name = event_nr2name(apc->event);
+ s = _("%s Autocommands for \"%s\"");
+! sourcing_name = alloc(STRLEN(s)
+! + STRLEN(name) + ap->patlen + 1);
+ if (sourcing_name != NULL)
+ {
+ sprintf((char *)sourcing_name, s,
+*** ../vim-8.1.1383/src/buffer.c 2019-05-23 22:11:56.284893258 +0200
+--- src/buffer.c 2019-05-24 18:10:23.957518220 +0200
+***************
+*** 2577,2583 ****
+ /* Make a copy of "pat" and change "^" to "\(^\|[\/]\)". */
+ if (*pat == '^')
+ {
+! patc = alloc((unsigned)STRLEN(pat) + 11);
+ if (patc == NULL)
+ return FAIL;
+ STRCPY(patc, "\\(^\\|[\\/]\\)");
+--- 2577,2583 ----
+ /* Make a copy of "pat" and change "^" to "\(^\|[\/]\)". */
+ if (*pat == '^')
+ {
+! patc = alloc(STRLEN(pat) + 11);
+ if (patc == NULL)
+ return FAIL;
+ STRCPY(patc, "\\(^\\|[\\/]\\)");
+***************
+*** 2634,2640 ****
+ break;
+ if (round == 1)
+ {
+! *file = (char_u **)alloc((unsigned)(count * sizeof(char_u *)));
+ if (*file == NULL)
+ {
+ vim_regfree(regmatch.regprog);
+--- 2634,2640 ----
+ break;
+ if (round == 1)
+ {
+! *file = (char_u **)alloc(count * sizeof(char_u *));
+ if (*file == NULL)
+ {
+ vim_regfree(regmatch.regprog);
+*** ../vim-8.1.1383/src/change.c 2019-05-19 22:53:36.504914607 +0200
+--- src/change.c 2019-05-24 18:10:37.033437887 +0200
+***************
+*** 985,991 ****
+ }
+ }
+
+! newp = alloc_check((unsigned)(linelen + newlen - oldlen));
+ if (newp == NULL)
+ return;
+
+--- 985,991 ----
+ }
+ }
+
+! newp = alloc(linelen + newlen - oldlen);
+ if (newp == NULL)
+ return;
+
+***************
+*** 1060,1066 ****
+ oldp = ml_get(lnum);
+ oldlen = (int)STRLEN(oldp);
+
+! newp = alloc_check((unsigned)(oldlen + newlen + 1));
+ if (newp == NULL)
+ return;
+ if (col > 0)
+--- 1060,1066 ----
+ oldp = ml_get(lnum);
+ oldlen = (int)STRLEN(oldp);
+
+! newp = alloc(oldlen + newlen + 1);
+ if (newp == NULL)
+ return;
+ if (col > 0)
+***************
+*** 1213,1219 ****
+ newp = oldp; // use same allocated memory
+ else
+ { // need to allocate a new line
+! newp = alloc((unsigned)(newlen + 1));
+ if (newp == NULL)
+ return FAIL;
+ mch_memmove(newp, oldp, (size_t)col);
+--- 1213,1219 ----
+ newp = oldp; // use same allocated memory
+ else
+ { // need to allocate a new line
+! newp = alloc(newlen + 1);
+ if (newp == NULL)
+ return FAIL;
+ mch_memmove(newp, oldp, (size_t)col);
+*** ../vim-8.1.1383/src/channel.c 2019-05-11 18:28:41.351611622 +0200
+--- src/channel.c 2019-05-24 18:10:54.849328634 +0200
+***************
+*** 2024,2030 ****
+ }
+ else
+ {
+! item = (jsonq_T *)alloc((unsigned)sizeof(jsonq_T));
+ if (item == NULL)
+ clear_tv(&listtv);
+ else
+--- 2024,2030 ----
+ }
+ else
+ {
+! item = (jsonq_T *)alloc(sizeof(jsonq_T));
+ if (item == NULL)
+ clear_tv(&listtv);
+ else
+***************
+*** 2223,2229 ****
+ /* append after the last item that was pushed back */
+ item = item->jq_next;
+
+! newitem = (jsonq_T *)alloc((unsigned)sizeof(jsonq_T));
+ if (newitem == NULL)
+ clear_tv(rettv);
+ else
+--- 2223,2229 ----
+ /* append after the last item that was pushed back */
+ item = item->jq_next;
+
+! newitem = (jsonq_T *)alloc(sizeof(jsonq_T));
+ if (newitem == NULL)
+ clear_tv(rettv);
+ else
+*** ../vim-8.1.1383/src/charset.c 2019-05-19 19:59:30.160255591 +0200
+--- src/charset.c 2019-05-24 18:11:12.589220044 +0200
+***************
+*** 355,364 ****
+ len += 4; /* illegal byte sequence */
+ }
+ }
+! res = alloc((unsigned)(len + 1));
+ }
+ else
+! res = alloc((unsigned)(vim_strsize(s) + 1));
+ if (res != NULL)
+ {
+ *res = NUL;
+--- 355,364 ----
+ len += 4; /* illegal byte sequence */
+ }
+ }
+! res = alloc(len + 1);
+ }
+ else
+! res = alloc(vim_strsize(s) + 1);
+ if (res != NULL)
+ {
+ *res = NUL;
+*** ../vim-8.1.1383/src/debugger.c 2019-04-23 18:39:43.694863660 +0200
+--- src/debugger.c 2019-05-24 18:11:26.453135323 +0200
+***************
+*** 873,879 ****
+ // Replace K_SNR in function name with "<SNR>".
+ if (!file && fname[0] == K_SPECIAL)
+ {
+! name = alloc((unsigned)STRLEN(fname) + 3);
+ if (name == NULL)
+ name = fname;
+ else
+--- 873,879 ----
+ // Replace K_SNR in function name with "<SNR>".
+ if (!file && fname[0] == K_SPECIAL)
+ {
+! name = alloc(STRLEN(fname) + 3);
+ if (name == NULL)
+ name = fname;
+ else
+*** ../vim-8.1.1383/src/dict.c 2019-04-28 18:04:56.058492178 +0200
+--- src/dict.c 2019-05-24 18:11:44.409025803 +0200
+***************
+*** 210,216 ****
+ {
+ dictitem_T *di;
+
+! di = (dictitem_T *)alloc((unsigned)(sizeof(dictitem_T) + STRLEN(key)));
+ if (di != NULL)
+ {
+ STRCPY(di->di_key, key);
+--- 210,216 ----
+ {
+ dictitem_T *di;
+
+! di = (dictitem_T *)alloc(sizeof(dictitem_T) + STRLEN(key));
+ if (di != NULL)
+ {
+ STRCPY(di->di_key, key);
+***************
+*** 228,235 ****
+ {
+ dictitem_T *di;
+
+! di = (dictitem_T *)alloc((unsigned)(sizeof(dictitem_T)
+! + STRLEN(org->di_key)));
+ if (di != NULL)
+ {
+ STRCPY(di->di_key, org->di_key);
+--- 228,234 ----
+ {
+ dictitem_T *di;
+
+! di = (dictitem_T *)alloc(sizeof(dictitem_T) + STRLEN(org->di_key));
+ if (di != NULL)
+ {
+ STRCPY(di->di_key, org->di_key);
+*** ../vim-8.1.1383/src/diff.c 2019-03-03 14:42:04.782109771 +0100
+--- src/diff.c 2019-05-24 18:12:01.012924672 +0200
+***************
+*** 537,543 ****
+ {
+ diff_T *dnew;
+
+! dnew = (diff_T *)alloc((unsigned)sizeof(diff_T));
+ if (dnew != NULL)
+ {
+ dnew->df_next = dp;
+--- 537,543 ----
+ {
+ diff_T *dnew;
+
+! dnew = (diff_T *)alloc(sizeof(diff_T));
+ if (dnew != NULL)
+ {
+ dnew->df_next = dp;
+***************
+*** 1123,1129 ****
+ {
+ len = STRLEN(tmp_orig) + STRLEN(tmp_new)
+ + STRLEN(tmp_diff) + STRLEN(p_srr) + 27;
+! cmd = alloc((unsigned)len);
+ if (cmd == NULL)
+ return FAIL;
+
+--- 1123,1129 ----
+ {
+ len = STRLEN(tmp_orig) + STRLEN(tmp_new)
+ + STRLEN(tmp_diff) + STRLEN(p_srr) + 27;
+! cmd = alloc(len);
+ if (cmd == NULL)
+ return FAIL;
+
+***************
+*** 1218,1224 ****
+ if (esc_name == NULL)
+ goto theend;
+ buflen = STRLEN(tmp_orig) + STRLEN(esc_name) + STRLEN(tmp_new) + 16;
+! buf = alloc((unsigned)buflen);
+ if (buf == NULL)
+ goto theend;
+
+--- 1218,1224 ----
+ if (esc_name == NULL)
+ goto theend;
+ buflen = STRLEN(tmp_orig) + STRLEN(esc_name) + STRLEN(tmp_new) + 16;
+! buf = alloc(buflen);
+ if (buf == NULL)
+ goto theend;
+
+*** ../vim-8.1.1383/src/digraph.c 2019-01-24 15:04:44.662887892 +0100
+--- src/digraph.c 2019-05-24 18:12:12.464855041 +0200
+***************
+*** 2317,2323 ****
+ /* Source the keymap file. It will contain a ":loadkeymap" command
+ * which will call ex_loadkeymap() below. */
+ buflen = STRLEN(curbuf->b_p_keymap) + STRLEN(p_enc) + 14;
+! buf = alloc((unsigned)buflen);
+ if (buf == NULL)
+ return e_outofmem;
+
+--- 2317,2323 ----
+ /* Source the keymap file. It will contain a ":loadkeymap" command
+ * which will call ex_loadkeymap() below. */
+ buflen = STRLEN(curbuf->b_p_keymap) + STRLEN(p_enc) + 14;
+! buf = alloc(buflen);
+ if (buf == NULL)
+ return e_outofmem;
+
+*** ../vim-8.1.1383/src/edit.c 2019-05-19 22:53:36.504914607 +0200
+--- src/edit.c 2019-05-24 18:12:48.592635815 +0200
+***************
+*** 1943,1949 ****
+ {
+ curwin->w_cursor.col = (colnr_T)new_cursor_col;
+ i = (int)curwin->w_virtcol - vcol;
+! ptr = alloc((unsigned)(i + 1));
+ if (ptr != NULL)
+ {
+ new_cursor_col += i;
+--- 1943,1949 ----
+ {
+ curwin->w_cursor.col = (colnr_T)new_cursor_col;
+ i = (int)curwin->w_virtcol - vcol;
+! ptr = alloc(i + 1);
+ if (ptr != NULL)
+ {
+ new_cursor_col += i;
+*** ../vim-8.1.1383/src/eval.c 2019-05-19 19:59:30.160255591 +0200
+--- src/eval.c 2019-05-24 18:13:34.400358802 +0200
+***************
+*** 5151,5157 ****
+ * Copy the string into allocated memory, handling backslashed
+ * characters.
+ */
+! name = alloc((unsigned)(p - *arg + extra));
+ if (name == NULL)
+ return FAIL;
+ rettv->v_type = VAR_STRING;
+--- 5151,5157 ----
+ * Copy the string into allocated memory, handling backslashed
+ * characters.
+ */
+! name = alloc(p - *arg + extra);
+ if (name == NULL)
+ return FAIL;
+ rettv->v_type = VAR_STRING;
+***************
+*** 5285,5291 ****
+ /*
+ * Copy the string into allocated memory, handling '' to ' reduction.
+ */
+! str = alloc((unsigned)((p - *arg) - reduce));
+ if (str == NULL)
+ return FAIL;
+ rettv->v_type = VAR_STRING;
+--- 5285,5291 ----
+ /*
+ * Copy the string into allocated memory, handling '' to ' reduction.
+ */
+! str = alloc((p - *arg) - reduce);
+ if (str == NULL)
+ return FAIL;
+ rettv->v_type = VAR_STRING;
+***************
+*** 6782,6789 ****
+ temp_result = eval_to_string(expr_start + 1, &nextcmd, FALSE);
+ if (temp_result != NULL && nextcmd == NULL)
+ {
+! retval = alloc((unsigned)(STRLEN(temp_result) + (expr_start - in_start)
+! + (in_end - expr_end) + 1));
+ if (retval != NULL)
+ {
+ STRCPY(retval, in_start);
+--- 6782,6789 ----
+ temp_result = eval_to_string(expr_start + 1, &nextcmd, FALSE);
+ if (temp_result != NULL && nextcmd == NULL)
+ {
+! retval = alloc(STRLEN(temp_result) + (expr_start - in_start)
+! + (in_end - expr_end) + 1);
+ if (retval != NULL)
+ {
+ STRCPY(retval, in_start);
+***************
+*** 8130,8137 ****
+ if (!valid_varname(varname))
+ return;
+
+! v = (dictitem_T *)alloc((unsigned)(sizeof(dictitem_T)
+! + STRLEN(varname)));
+ if (v == NULL)
+ return;
+ STRCPY(v->di_key, varname);
+--- 8130,8136 ----
+ if (!valid_varname(varname))
+ return;
+
+! v = (dictitem_T *)alloc(sizeof(dictitem_T) + STRLEN(varname));
+ if (v == NULL)
+ return;
+ STRCPY(v->di_key, varname);
+***************
+*** 8993,8999 ****
+ }
+ else
+ {
+! winvarname = alloc((unsigned)STRLEN(varname) + 3);
+ if (winvarname != NULL)
+ {
+ STRCPY(winvarname, "w:");
+--- 8992,8998 ----
+ }
+ else
+ {
+! winvarname = alloc(STRLEN(varname) + 3);
+ if (winvarname != NULL)
+ {
+ STRCPY(winvarname, "w:");
+***************
+*** 9056,9062 ****
+ char_u *scriptname;
+
+ /* Get the script file name: replace '#' with '/', append ".vim". */
+! scriptname = alloc((unsigned)(STRLEN(name) + 14));
+ if (scriptname == NULL)
+ return FALSE;
+ STRCPY(scriptname, "autoload/");
+--- 9055,9061 ----
+ char_u *scriptname;
+
+ /* Get the script file name: replace '#' with '/', append ".vim". */
+! scriptname = alloc(STRLEN(name) + 14);
+ if (scriptname == NULL)
+ return FALSE;
+ STRCPY(scriptname, "autoload/");
+*** ../vim-8.1.1383/src/evalfunc.c 2019-05-24 14:14:10.260307596 +0200
+--- src/evalfunc.c 2019-05-24 18:14:16.804103312 +0200
+***************
+*** 4272,4281 ****
+ }
+ count = (long)(foldend - foldstart + 1);
+ txt = NGETTEXT("+-%s%3ld line: ", "+-%s%3ld lines: ", count);
+! r = alloc((unsigned)(STRLEN(txt)
+! + STRLEN(dashes) /* for %s */
+! + 20 /* for %3ld */
+! + STRLEN(s))); /* concatenated */
+ if (r != NULL)
+ {
+ sprintf((char *)r, txt, dashes, count);
+--- 4272,4281 ----
+ }
+ count = (long)(foldend - foldstart + 1);
+ txt = NGETTEXT("+-%s%3ld line: ", "+-%s%3ld lines: ", count);
+! r = alloc(STRLEN(txt)
+! + STRLEN(dashes) // for %s
+! + 20 // for %3ld
+! + STRLEN(s)); // concatenated
+ if (r != NULL)
+ {
+ sprintf((char *)r, txt, dashes, count);
+***************
+*** 10386,10392 ****
+ if (q > p && !mch_isFullName(buf))
+ {
+ /* symlink is relative to directory of argument */
+! cpy = alloc((unsigned)(STRLEN(p) + STRLEN(buf) + 1));
+ if (cpy != NULL)
+ {
+ STRCPY(cpy, p);
+--- 10386,10392 ----
+ if (q > p && !mch_isFullName(buf))
+ {
+ /* symlink is relative to directory of argument */
+! cpy = alloc(STRLEN(p) + STRLEN(buf) + 1);
+ if (cpy != NULL)
+ {
+ STRCPY(cpy, p);
+***************
+*** 11067,11074 ****
+
+ /* Make two search patterns: start/end (pat2, for in nested pairs) and
+ * start/middle/end (pat3, for the top pair). */
+! pat2 = alloc((unsigned)(STRLEN(spat) + STRLEN(epat) + 17));
+! pat3 = alloc((unsigned)(STRLEN(spat) + STRLEN(mpat) + STRLEN(epat) + 25));
+ if (pat2 == NULL || pat3 == NULL)
+ goto theend;
+ sprintf((char *)pat2, "\\m\\(%s\\m\\)\\|\\(%s\\m\\)", spat, epat);
+--- 11067,11074 ----
+
+ /* Make two search patterns: start/end (pat2, for in nested pairs) and
+ * start/middle/end (pat3, for the top pair). */
+! pat2 = alloc(STRLEN(spat) + STRLEN(epat) + 17);
+! pat3 = alloc(STRLEN(spat) + STRLEN(mpat) + STRLEN(epat) + 25);
+ if (pat2 == NULL || pat3 == NULL)
+ goto theend;
+ sprintf((char *)pat2, "\\m\\(%s\\m\\)\\|\\(%s\\m\\)", spat, epat);
+***************
+*** 11328,11334 ****
+ {
+ buf_T *save_curbuf = curbuf;
+
+! bufvarname = alloc((unsigned)STRLEN(varname) + 3);
+ if (bufvarname != NULL)
+ {
+ curbuf = buf;
+--- 11328,11334 ----
+ {
+ buf_T *save_curbuf = curbuf;
+
+! bufvarname = alloc(STRLEN(varname) + 3);
+ if (bufvarname != NULL)
+ {
+ curbuf = buf;
+***************
+*** 11850,11856 ****
+ save_curtab = curtab;
+ goto_tabpage_tp(tp, FALSE, FALSE);
+
+! tabvarname = alloc((unsigned)STRLEN(varname) + 3);
+ if (tabvarname != NULL)
+ {
+ STRCPY(tabvarname, "t:");
+--- 11850,11856 ----
+ save_curtab = curtab;
+ goto_tabpage_tp(tp, FALSE, FALSE);
+
+! tabvarname = alloc(STRLEN(varname) + 3);
+ if (tabvarname != NULL)
+ {
+ STRCPY(tabvarname, "t:");
+***************
+*** 13921,13927 ****
+ ++i;
+ end = res + i;
+
+! s = alloc((unsigned)(end - start + 1));
+ if (s == NULL)
+ goto errret;
+
+--- 13921,13927 ----
+ ++i;
+ end = res + i;
+
+! s = alloc(end - start + 1);
+ if (s == NULL)
+ goto errret;
+
+*** ../vim-8.1.1383/src/ex_cmds.c 2019-05-23 21:35:44.451922663 +0200
+--- src/ex_cmds.c 2019-05-24 18:14:53.383883545 +0200
+***************
+*** 595,604 ****
+ }
+
+ /* Allocate a buffer that can hold the longest line. */
+! sortbuf1 = alloc((unsigned)maxlen + 1);
+ if (sortbuf1 == NULL)
+ goto sortend;
+! sortbuf2 = alloc((unsigned)maxlen + 1);
+ if (sortbuf2 == NULL)
+ goto sortend;
+
+--- 595,604 ----
+ }
+
+ /* Allocate a buffer that can hold the longest line. */
+! sortbuf1 = alloc(maxlen + 1);
+ if (sortbuf1 == NULL)
+ goto sortend;
+! sortbuf2 = alloc(maxlen + 1);
+ if (sortbuf2 == NULL)
+ goto sortend;
+
+***************
+*** 1146,1152 ****
+ }
+ len += (int)STRLEN(prevcmd);
+ }
+! if ((t = alloc((unsigned)len)) == NULL)
+ {
+ vim_free(newcmd);
+ return;
+--- 1146,1152 ----
+ }
+ len += (int)STRLEN(prevcmd);
+ }
+! if ((t = alloc(len)) == NULL)
+ {
+ vim_free(newcmd);
+ return;
+***************
+*** 1209,1215 ****
+ */
+ if (*p_shq != NUL)
+ {
+! newcmd = alloc((unsigned)(STRLEN(prevcmd) + 2 * STRLEN(p_shq) + 1));
+ if (newcmd == NULL)
+ return;
+ STRCPY(newcmd, p_shq);
+--- 1209,1215 ----
+ */
+ if (*p_shq != NUL)
+ {
+! newcmd = alloc(STRLEN(prevcmd) + 2 * STRLEN(p_shq) + 1);
+ if (newcmd == NULL)
+ return;
+ STRCPY(newcmd, p_shq);
+***************
+*** 3908,3914 ****
+ len = (int)STRLEN(command) + 3;
+ else
+ len = 30;
+! p = alloc((unsigned)len);
+ if (p != NULL)
+ {
+ if (command != NULL)
+--- 3908,3914 ----
+ len = (int)STRLEN(command) + 3;
+ else
+ len = 30;
+! p = alloc(len);
+ if (p != NULL)
+ {
+ if (command != NULL)
+***************
+*** 5634,5640 ****
+ * too many calls to alloc()/free()).
+ */
+ new_start_len = needed_len + 50;
+! if ((new_start = alloc_check(new_start_len)) == NULL)
+ goto outofmem;
+ *new_start = NUL;
+ new_end = new_start;
+--- 5634,5640 ----
+ * too many calls to alloc()/free()).
+ */
+ new_start_len = needed_len + 50;
+! if ((new_start = alloc(new_start_len)) == NULL)
+ goto outofmem;
+ *new_start = NUL;
+ new_end = new_start;
+***************
+*** 5651,5657 ****
+ if (needed_len > (int)new_start_len)
+ {
+ new_start_len = needed_len + 50;
+! if ((p1 = alloc_check(new_start_len)) == NULL)
+ {
+ vim_free(new_start);
+ goto outofmem;
+--- 5651,5657 ----
+ if (needed_len > (int)new_start_len)
+ {
+ new_start_len = needed_len + 50;
+! if ((p1 = alloc(new_start_len)) == NULL)
+ {
+ vim_free(new_start);
+ goto outofmem;
+***************
+*** 7320,7326 ****
+ got_int = TRUE;
+ break;
+ }
+! s = alloc((unsigned)(p2 - p1 + STRLEN(fname) + 2));
+ if (s == NULL)
+ {
+ got_int = TRUE;
+--- 7320,7326 ----
+ got_int = TRUE;
+ break;
+ }
+! s = alloc(p2 - p1 + STRLEN(fname) + 2);
+ if (s == NULL)
+ {
+ got_int = TRUE;
+*** ../vim-8.1.1383/src/ex_cmds2.c 2019-05-23 21:35:44.451922663 +0200
+--- src/ex_cmds2.c 2019-05-24 18:15:16.167746968 +0200
+***************
+*** 2366,2372 ****
+ }
+ else
+ {
+! buf = alloc((unsigned)(STRLEN(eap->arg) + 14));
+ if (buf != NULL)
+ {
+ if (eap->forceit)
+--- 2366,2372 ----
+ }
+ else
+ {
+! buf = alloc(STRLEN(eap->arg) + 14);
+ if (buf != NULL)
+ {
+ if (eap->forceit)
+*** ../vim-8.1.1383/src/ex_docmd.c 2019-05-23 21:35:44.451922663 +0200
+--- src/ex_docmd.c 2019-05-24 18:15:52.379530286 +0200
+***************
+*** 5094,5100 ****
+ i = (int)(src - *cmdlinep) + (int)STRLEN(src + srclen) + len + 3;
+ if (eap->nextcmd != NULL)
+ i += (int)STRLEN(eap->nextcmd);/* add space for next command */
+! if ((new_cmdline = alloc((unsigned)i)) == NULL)
+ return NULL; /* out of memory! */
+
+ /*
+--- 5094,5100 ----
+ i = (int)(src - *cmdlinep) + (int)STRLEN(src + srclen) + len + 3;
+ if (eap->nextcmd != NULL)
+ i += (int)STRLEN(eap->nextcmd);/* add space for next command */
+! if ((new_cmdline = alloc(i)) == NULL)
+ return NULL; /* out of memory! */
+
+ /*
+***************
+*** 6547,6553 ****
+ void
+ alist_new(void)
+ {
+! curwin->w_alist = (alist_T *)alloc((unsigned)sizeof(alist_T));
+ if (curwin->w_alist == NULL)
+ {
+ curwin->w_alist = &global_alist;
+--- 6547,6553 ----
+ void
+ alist_new(void)
+ {
+! curwin->w_alist = (alist_T *)alloc(sizeof(alist_T));
+ if (curwin->w_alist == NULL)
+ {
+ curwin->w_alist = &global_alist;
+***************
+*** 6581,6587 ****
+ * expansion. Also, the vimrc file isn't read yet, thus the user
+ * can't set the options. */
+ p_su = empty_option;
+! old_arg_files = (char_u **)alloc((unsigned)(sizeof(char_u *) * GARGCOUNT));
+ if (old_arg_files != NULL)
+ {
+ for (i = 0; i < GARGCOUNT; ++i)
+--- 6581,6587 ----
+ * expansion. Also, the vimrc file isn't read yet, thus the user
+ * can't set the options. */
+ p_su = empty_option;
+! old_arg_files = (char_u **)alloc(sizeof(char_u *) * GARGCOUNT);
+ if (old_arg_files != NULL)
+ {
+ for (i = 0; i < GARGCOUNT; ++i)
+***************
+*** 8839,8845 ****
+ }
+ if (len > 0)
+ {
+! arg = alloc((unsigned)(STRLEN(eap->arg) + len + 1));
+ if (arg != NULL)
+ {
+ len = 0;
+--- 8839,8845 ----
+ }
+ if (len > 0)
+ {
+! arg = alloc(STRLEN(eap->arg) + len + 1);
+ if (arg != NULL)
+ {
+ len = 0;
+***************
+*** 9628,9634 ****
+ }
+
+ /* allocate memory */
+! retval = alloc((unsigned)len + 1);
+ if (retval == NULL)
+ break;
+ }
+--- 9628,9634 ----
+ }
+
+ /* allocate memory */
+! retval = alloc(len + 1);
+ if (retval == NULL)
+ break;
+ }
+***************
+*** 10622,10628 ****
+ for (p = sname; *p; ++p)
+ if (*p == '=' || vim_ispathsep(*p))
+ ++len;
+! retval = alloc((unsigned)(STRLEN(sname) + len + STRLEN(p_vdir) + 9));
+ if (retval != NULL)
+ {
+ STRCPY(retval, p_vdir);
+--- 10622,10628 ----
+ for (p = sname; *p; ++p)
+ if (*p == '=' || vim_ispathsep(*p))
+ ++len;
+! retval = alloc(STRLEN(sname) + len + STRLEN(p_vdir) + 9);
+ if (retval != NULL)
+ {
+ STRCPY(retval, p_vdir);
+*** ../vim-8.1.1383/src/ex_eval.c 2019-01-19 17:43:03.433449041 +0100
+--- src/ex_eval.c 2019-05-24 18:16:08.883431670 +0200
+***************
+*** 251,257 ****
+ while (*plist != NULL)
+ plist = &(*plist)->next;
+
+! elem = (struct msglist *)alloc((unsigned)sizeof(struct msglist));
+ if (elem == NULL)
+ {
+ suppress_errthrow = TRUE;
+--- 251,257 ----
+ while (*plist != NULL)
+ plist = &(*plist)->next;
+
+! elem = (struct msglist *)alloc(sizeof(struct msglist));
+ if (elem == NULL)
+ {
+ suppress_errthrow = TRUE;
+***************
+*** 519,525 ****
+ }
+ }
+
+! excp = (except_T *)alloc((unsigned)sizeof(except_T));
+ if (excp == NULL)
+ goto nomem;
+
+--- 519,525 ----
+ }
+ }
+
+! excp = (except_T *)alloc(sizeof(except_T));
+ if (excp == NULL)
+ goto nomem;
+
+***************
+*** 1441,1447 ****
+ {
+ eslist_T *elem;
+
+! elem = (eslist_T *)alloc((unsigned)sizeof(struct eslist_elem));
+ if (elem == NULL)
+ emsg(_(e_outofmem));
+ else
+--- 1441,1447 ----
+ {
+ eslist_T *elem;
+
+! elem = (eslist_T *)alloc(sizeof(struct eslist_elem));
+ if (elem == NULL)
+ emsg(_(e_outofmem));
+ else
+*** ../vim-8.1.1383/src/ex_getln.c 2019-05-19 19:59:30.164255569 +0200
+--- src/ex_getln.c 2019-05-24 18:16:43.123227368 +0200
+***************
+*** 4154,4160 ****
+ }
+ }
+
+! ss = alloc((unsigned)len + 1);
+ if (ss)
+ vim_strncpy(ss, xp->xp_files[0], (size_t)len);
+ findex = -1; /* next p_wc gets first one */
+--- 4154,4160 ----
+ }
+ }
+
+! ss = alloc(len + 1);
+ if (ss)
+ vim_strncpy(ss, xp->xp_files[0], (size_t)len);
+ findex = -1; /* next p_wc gets first one */
+***************
+*** 4362,4368 ****
+ {
+ char_u *p;
+
+! p = alloc((unsigned)(STRLEN(*pp) + 2));
+ if (p != NULL)
+ {
+ p[0] = '\\';
+--- 4362,4368 ----
+ {
+ char_u *p;
+
+! p = alloc(STRLEN(*pp) + 2);
+ if (p != NULL)
+ {
+ p[0] = '\\';
+***************
+*** 5294,5300 ****
+ if (count == 0)
+ return OK;
+ *num_file = count;
+! *file = (char_u **)alloc((unsigned)(count * sizeof(char_u *)));
+ if (*file == NULL)
+ {
+ *file = (char_u **)"";
+--- 5294,5300 ----
+ if (count == 0)
+ return OK;
+ *num_file = count;
+! *file = (char_u **)alloc(count * sizeof(char_u *));
+ if (*file == NULL)
+ {
+ *file = (char_u **)"";
+***************
+*** 5636,5642 ****
+
+ for (i = 0; dirnames[i] != NULL; ++i)
+ {
+! s = alloc((unsigned)(STRLEN(dirnames[i]) + pat_len + 7));
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+--- 5636,5642 ----
+
+ for (i = 0; dirnames[i] != NULL; ++i)
+ {
+! s = alloc(STRLEN(dirnames[i]) + pat_len + 7);
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+***************
+*** 5650,5656 ****
+ if (flags & DIP_START) {
+ for (i = 0; dirnames[i] != NULL; ++i)
+ {
+! s = alloc((unsigned)(STRLEN(dirnames[i]) + pat_len + 22));
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+--- 5650,5656 ----
+ if (flags & DIP_START) {
+ for (i = 0; dirnames[i] != NULL; ++i)
+ {
+! s = alloc(STRLEN(dirnames[i]) + pat_len + 22);
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+***************
+*** 5665,5671 ****
+ if (flags & DIP_OPT) {
+ for (i = 0; dirnames[i] != NULL; ++i)
+ {
+! s = alloc((unsigned)(STRLEN(dirnames[i]) + pat_len + 20));
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+--- 5665,5671 ----
+ if (flags & DIP_OPT) {
+ for (i = 0; dirnames[i] != NULL; ++i)
+ {
+! s = alloc(STRLEN(dirnames[i]) + pat_len + 20);
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+***************
+*** 5728,5734 ****
+ pat_len = (int)STRLEN(pat);
+ ga_init2(&ga, (int)sizeof(char *), 10);
+
+! s = alloc((unsigned)(pat_len + 26));
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+--- 5728,5734 ----
+ pat_len = (int)STRLEN(pat);
+ ga_init2(&ga, (int)sizeof(char *), 10);
+
+! s = alloc(pat_len + 26);
+ if (s == NULL)
+ {
+ ga_clear_strings(&ga);
+*** ../vim-8.1.1383/src/fileio.c 2019-05-24 16:45:57.690428744 +0200
+--- src/fileio.c 2019-05-24 18:17:11.455058638 +0200
+***************
+*** 6203,6209 ****
+ */
+ if (fname == NULL || *fname == NUL)
+ {
+! retval = alloc((unsigned)(MAXPATHL + extlen + 3));
+ if (retval == NULL)
+ return NULL;
+ if (mch_dirname(retval, MAXPATHL) == FAIL ||
+--- 6203,6209 ----
+ */
+ if (fname == NULL || *fname == NUL)
+ {
+! retval = alloc(MAXPATHL + extlen + 3);
+ if (retval == NULL)
+ return NULL;
+ if (mch_dirname(retval, MAXPATHL) == FAIL ||
+***************
+*** 6222,6228 ****
+ else
+ {
+ fnamelen = (int)STRLEN(fname);
+! retval = alloc((unsigned)(fnamelen + extlen + 3));
+ if (retval == NULL)
+ return NULL;
+ STRCPY(retval, fname);
+--- 6222,6228 ----
+ else
+ {
+ fnamelen = (int)STRLEN(fname);
+! retval = alloc(fnamelen + extlen + 3);
+ if (retval == NULL)
+ return NULL;
+ STRCPY(retval, fname);
+***************
+*** 6894,6901 ****
+ {
+ if (!helpmesg)
+ mesg2 = "";
+! tbuf = (char *)alloc((unsigned)(STRLEN(path) + STRLEN(mesg)
+! + STRLEN(mesg2) + 2));
+ sprintf(tbuf, mesg, path);
+ #ifdef FEAT_EVAL
+ /* Set warningmsg here, before the unimportant and output-specific
+--- 6894,6901 ----
+ {
+ if (!helpmesg)
+ mesg2 = "";
+! tbuf = (char *)alloc(STRLEN(path) + STRLEN(mesg)
+! + STRLEN(mesg2) + 2);
+ sprintf(tbuf, mesg, path);
+ #ifdef FEAT_EVAL
+ /* Set warningmsg here, before the unimportant and output-specific
+***************
+*** 7391,7397 ****
+ {
+ char_u *buf;
+
+! buf = alloc((unsigned)MAXPATHL + 2);
+ if (buf != NULL)
+ {
+ if (vim_FullName(tempdir, buf, MAXPATHL, FALSE) == FAIL)
+--- 7391,7397 ----
+ {
+ char_u *buf;
+
+! buf = alloc(MAXPATHL + 2);
+ if (buf != NULL)
+ {
+ if (vim_FullName(tempdir, buf, MAXPATHL, FALSE) == FAIL)
+*** ../vim-8.1.1383/src/findfile.c 2019-03-31 19:40:03.818129110 +0200
+--- src/findfile.c 2019-05-24 18:17:53.290809924 +0200
+***************
+*** 319,325 ****
+ search_ctx = search_ctx_arg;
+ else
+ {
+! search_ctx = (ff_search_ctx_T*)alloc((unsigned)sizeof(ff_search_ctx_T));
+ if (search_ctx == NULL)
+ goto error_return;
+ vim_memset(search_ctx, 0, sizeof(ff_search_ctx_T));
+--- 319,325 ----
+ search_ctx = search_ctx_arg;
+ else
+ {
+! search_ctx = (ff_search_ctx_T*)alloc(sizeof(ff_search_ctx_T));
+ if (search_ctx == NULL)
+ goto error_return;
+ vim_memset(search_ctx, 0, sizeof(ff_search_ctx_T));
+***************
+*** 430,437 ****
+ walker++;
+
+ dircount = 1;
+! search_ctx->ffsc_stopdirs_v =
+! (char_u **)alloc((unsigned)sizeof(char_u *));
+
+ if (search_ctx->ffsc_stopdirs_v != NULL)
+ {
+--- 430,436 ----
+ walker++;
+
+ dircount = 1;
+! search_ctx->ffsc_stopdirs_v = (char_u **)alloc(sizeof(char_u *));
+
+ if (search_ctx->ffsc_stopdirs_v != NULL)
+ {
+***************
+*** 926,933 ****
+ */
+ if (path_with_url(dirptrs[0]))
+ {
+! stackp->ffs_filearray = (char_u **)
+! alloc((unsigned)sizeof(char *));
+ if (stackp->ffs_filearray != NULL
+ && (stackp->ffs_filearray[0]
+ = vim_strsave(dirptrs[0])) != NULL)
+--- 925,931 ----
+ */
+ if (path_with_url(dirptrs[0]))
+ {
+! stackp->ffs_filearray = (char_u **)alloc(sizeof(char *));
+ if (stackp->ffs_filearray != NULL
+ && (stackp->ffs_filearray[0]
+ = vim_strsave(dirptrs[0])) != NULL)
+***************
+*** 1285,1291 ****
+ /*
+ * if we reach this we didn't find a list and we have to allocate new list
+ */
+! retptr = (ff_visited_list_hdr_T*)alloc((unsigned)sizeof(*retptr));
+ if (retptr == NULL)
+ return NULL;
+
+--- 1283,1289 ----
+ /*
+ * if we reach this we didn't find a list and we have to allocate new list
+ */
+! retptr = (ff_visited_list_hdr_T*)alloc(sizeof(*retptr));
+ if (retptr == NULL)
+ return NULL;
+
+***************
+*** 1413,1420 ****
+ /*
+ * New file/dir. Add it to the list of visited files/dirs.
+ */
+! vp = (ff_visited_T *)alloc((unsigned)(sizeof(ff_visited_T)
+! + STRLEN(ff_expand_buffer)));
+
+ if (vp != NULL)
+ {
+--- 1411,1417 ----
+ /*
+ * New file/dir. Add it to the list of visited files/dirs.
+ */
+! vp = (ff_visited_T *)alloc(sizeof(ff_visited_T) + STRLEN(ff_expand_buffer));
+
+ if (vp != NULL)
+ {
+***************
+*** 1462,1468 ****
+ {
+ ff_stack_T *new;
+
+! new = (ff_stack_T *)alloc((unsigned)sizeof(ff_stack_T));
+ if (new == NULL)
+ return NULL;
+
+--- 1459,1465 ----
+ {
+ ff_stack_T *new;
+
+! new = (ff_stack_T *)alloc(sizeof(ff_stack_T));
+ if (new == NULL)
+ return NULL;
+
+***************
+*** 2579,2585 ****
+ char_u *paths = NULL;
+ int glob_flags = 0;
+
+! if ((curdir = alloc((unsigned)MAXPATHL)) == NULL)
+ return 0;
+ mch_dirname(curdir, MAXPATHL);
+
+--- 2576,2582 ----
+ char_u *paths = NULL;
+ int glob_flags = 0;
+
+! if ((curdir = alloc(MAXPATHL)) == NULL)
+ return 0;
+ mch_dirname(curdir, MAXPATHL);
+
+*** ../vim-8.1.1383/src/fold.c 2019-01-24 15:04:44.670887836 +0100
+--- src/fold.c 2019-05-24 18:18:11.314702942 +0200
+***************
+*** 1770,1776 ****
+ /* Check if the line ends with an unclosed comment */
+ (void)skip_comment(line, FALSE, FALSE, &line_is_comment);
+ #endif
+! newline = alloc((unsigned)(line_len + markerlen + STRLEN(cms) + 1));
+ if (newline == NULL)
+ return;
+ STRCPY(newline, line);
+--- 1770,1776 ----
+ /* Check if the line ends with an unclosed comment */
+ (void)skip_comment(line, FALSE, FALSE, &line_is_comment);
+ #endif
+! newline = alloc(line_len + markerlen + STRLEN(cms) + 1);
+ if (newline == NULL)
+ return;
+ STRCPY(newline, line);
+***************
+*** 1849,1855 ****
+ if (u_save(lnum - 1, lnum + 1) == OK)
+ {
+ /* Make new line: text-before-marker + text-after-marker */
+! newline = alloc((unsigned)(STRLEN(line) - len + 1));
+ if (newline != NULL)
+ {
+ STRNCPY(newline, line, p - line);
+--- 1849,1855 ----
+ if (u_save(lnum - 1, lnum + 1) == OK)
+ {
+ /* Make new line: text-before-marker + text-after-marker */
+! newline = alloc(STRLEN(line) - len + 1);
+ if (newline != NULL)
+ {
+ STRNCPY(newline, line, p - line);
+*** ../vim-8.1.1383/src/getchar.c 2019-05-22 22:38:21.660405578 +0200
+--- src/getchar.c 2019-05-24 18:18:37.122549890 +0200
+***************
+*** 3731,3737 ****
+ /*
+ * Get here when adding a new entry to the maphash[] list or abbrlist.
+ */
+! mp = (mapblock_T *)alloc((unsigned)sizeof(mapblock_T));
+ if (mp == NULL)
+ {
+ retval = 4; /* no mem */
+--- 3731,3737 ----
+ /*
+ * Get here when adding a new entry to the maphash[] list or abbrlist.
+ */
+! mp = (mapblock_T *)alloc(sizeof(mapblock_T));
+ if (mp == NULL)
+ {
+ retval = 4; /* no mem */
+***************
+*** 4375,4381 ****
+
+ if (round == 1)
+ {
+! *file = (char_u **)alloc((unsigned)(count * sizeof(char_u *)));
+ if (*file == NULL)
+ return FAIL;
+ }
+--- 4375,4381 ----
+
+ if (round == 1)
+ {
+! *file = (char_u **)alloc(count * sizeof(char_u *));
+ if (*file == NULL)
+ return FAIL;
+ }
+***************
+*** 4695,4701 ****
+ /* Need a buffer to hold up to three times as much. Four in case of an
+ * illegal utf-8 byte:
+ * 0xc0 -> 0xc3 0x80 -> 0xc3 K_SPECIAL KS_SPECIAL KE_FILLER */
+! res = alloc((unsigned)(STRLEN(p) * 4) + 1);
+ if (res != NULL)
+ {
+ d = res;
+--- 4695,4701 ----
+ /* Need a buffer to hold up to three times as much. Four in case of an
+ * illegal utf-8 byte:
+ * 0xc0 -> 0xc3 0x80 -> 0xc3 K_SPECIAL KS_SPECIAL KE_FILLER */
+! res = alloc(STRLEN(p) * 4 + 1);
+ if (res != NULL)
+ {
+ d = res;
+*** ../vim-8.1.1383/src/gui.c 2019-05-23 21:35:44.451922663 +0200
+--- src/gui.c 2019-05-24 18:18:55.070443551 +0200
+***************
+*** 2162,2168 ****
+
+ if (enc_utf8)
+ {
+! buf = alloc((unsigned)(len * MB_MAXBYTES + 1));
+ if (buf == NULL)
+ return OK; /* not much we could do here... */
+
+--- 2162,2168 ----
+
+ if (enc_utf8)
+ {
+! buf = alloc(len * MB_MAXBYTES + 1);
+ if (buf == NULL)
+ return OK; /* not much we could do here... */
+
+***************
+*** 2185,2191 ****
+ }
+ else if (enc_dbcs == DBCS_JPNU)
+ {
+! buf = alloc((unsigned)(len * 2 + 1));
+ if (buf == NULL)
+ return OK; /* not much we could do here... */
+
+--- 2185,2191 ----
+ }
+ else if (enc_dbcs == DBCS_JPNU)
+ {
+! buf = alloc(len * 2 + 1);
+ if (buf == NULL)
+ return OK; /* not much we could do here... */
+
+*** ../vim-8.1.1383/src/gui_at_fs.c 2019-01-13 23:38:33.391773303 +0100
+--- src/gui_at_fs.c 2019-05-24 18:19:22.602280613 +0200
+***************
+*** 499,505 ****
+ (unsigned)(Alloc * sizeof(SFLogin)));
+ }
+ len = strlen(pw->pw_name);
+! entries[i].real = XtMalloc((unsigned) (len + 3));
+ (void) strcat(strcpy(entries[i].real, "~"), pw->pw_name);
+ entries[i].shown = entries[i].real;
+ entries[i].statDone = 1;
+--- 499,505 ----
+ (unsigned)(Alloc * sizeof(SFLogin)));
+ }
+ len = strlen(pw->pw_name);
+! entries[i].real = XtMalloc((unsigned)(len + 3));
+ (void) strcat(strcpy(entries[i].real, "~"), pw->pw_name);
+ entries[i].shown = entries[i].real;
+ entries[i].statDone = 1;
+***************
+*** 1307,1313 ****
+ int len;
+
+ len = strlen(shown);
+! entry->shown = XtMalloc((unsigned) (len + 2));
+ (void) strcpy(entry->shown, shown);
+ SFwriteStatChar(entry->shown, len, &statBuf);
+ entry->shown[len + 1] = 0;
+--- 1307,1313 ----
+ int len;
+
+ len = strlen(shown);
+! entry->shown = XtMalloc((unsigned)(len + 2));
+ (void) strcpy(entry->shown, shown);
+ SFwriteStatChar(entry->shown, len, &statBuf);
+ entry->shown[len + 1] = 0;
+***************
+*** 2032,2038 ****
+ result[i].statDone = 0;
+ str = dp->d_name;
+ len = strlen(str);
+! result[i].real = XtMalloc((unsigned) (len + 2));
+ (void) strcat(strcpy(result[i].real, str), " ");
+ if (len > maxChars)
+ maxChars = len;
+--- 2032,2038 ----
+ result[i].statDone = 0;
+ str = dp->d_name;
+ len = strlen(str);
+! result[i].real = XtMalloc((unsigned)(len + 2));
+ (void) strcat(strcpy(result[i].real, str), " ");
+ if (len > maxChars)
+ maxChars = len;
+*** ../vim-8.1.1383/src/gui_gtk.c 2019-03-30 18:46:57.352077376 +0100
+--- src/gui_gtk.c 2019-05-24 18:19:34.550209963 +0200
+***************
+*** 559,565 ****
+ if (*psrc == '_')
+ ++n_underscores;
+
+! buf = alloc((unsigned)(psrc - name + n_underscores + 1));
+ if (buf != NULL)
+ {
+ pdest = buf;
+--- 559,565 ----
+ if (*psrc == '_')
+ ++n_underscores;
+
+! buf = alloc(psrc - name + n_underscores + 1);
+ if (buf != NULL)
+ {
+ pdest = buf;
+*** ../vim-8.1.1383/src/gui_gtk_x11.c 2019-04-28 19:46:17.026060122 +0200
+--- src/gui_gtk_x11.c 2019-05-24 18:20:02.498044846 +0200
+***************
+*** 429,435 ****
+ * into gui_argv. Freed later in gui_mch_init().
+ */
+ gui_argc = 0;
+! gui_argv = (char **)alloc((unsigned)((*argc + 1) * sizeof(char *)));
+
+ g_return_if_fail(gui_argv != NULL);
+
+--- 429,435 ----
+ * into gui_argv. Freed later in gui_mch_init().
+ */
+ gui_argc = 0;
+! gui_argv = (char **)alloc((*argc + 1) * sizeof(char *));
+
+ g_return_if_fail(gui_argv != NULL);
+
+***************
+*** 1544,1550 ****
+
+ if (info == (guint)TARGET_VIM)
+ {
+! tmpbuf = alloc((unsigned)length + 1);
+ if (tmpbuf != NULL)
+ {
+ tmpbuf[0] = motion_type;
+--- 1544,1550 ----
+
+ if (info == (guint)TARGET_VIM)
+ {
+! tmpbuf = alloc(length + 1);
+ if (tmpbuf != NULL)
+ {
+ tmpbuf[0] = motion_type;
+***************
+*** 1603,1609 ****
+ int l = STRLEN(p_enc);
+
+ /* contents: motion_type 'encoding' NUL text */
+! tmpbuf = alloc((unsigned)length + l + 2);
+ if (tmpbuf != NULL)
+ {
+ tmpbuf[0] = motion_type;
+--- 1603,1609 ----
+ int l = STRLEN(p_enc);
+
+ /* contents: motion_type 'encoding' NUL text */
+! tmpbuf = alloc(length + l + 2);
+ if (tmpbuf != NULL)
+ {
+ tmpbuf[0] = motion_type;
+***************
+*** 2512,2519 ****
+ if (i == count)
+ {
+ /* allocate an Atoms array which is one item longer */
+! new_atoms = (Atom *)alloc((unsigned)((count + 1)
+! * sizeof(Atom)));
+ if (new_atoms != NULL)
+ {
+ memcpy(new_atoms, existing_atoms, count * sizeof(Atom));
+--- 2512,2518 ----
+ if (i == count)
+ {
+ /* allocate an Atoms array which is one item longer */
+! new_atoms = (Atom *)alloc((count + 1) * sizeof(Atom));
+ if (new_atoms != NULL)
+ {
+ memcpy(new_atoms, existing_atoms, count * sizeof(Atom));
+*** ../vim-8.1.1383/src/gui_motif.c 2019-03-30 18:46:57.352077376 +0100
+--- src/gui_motif.c 2019-05-24 18:20:16.981959328 +0200
+***************
+*** 2538,2544 ****
+ for (p = buts; *p; ++p)
+ if (*p == DLG_BUTTON_SEP)
+ ++butcount;
+! buttons = (Widget *)alloc((unsigned)(butcount * sizeof(Widget)));
+ if (buttons == NULL)
+ {
+ vim_free(buts);
+--- 2538,2544 ----
+ for (p = buts; *p; ++p)
+ if (*p == DLG_BUTTON_SEP)
+ ++butcount;
+! buttons = (Widget *)alloc(butcount * sizeof(Widget));
+ if (buttons == NULL)
+ {
+ vim_free(buts);
+*** ../vim-8.1.1383/src/gui_w32.c 2019-05-09 15:12:45.168723969 +0200
+--- src/gui_w32.c 2019-05-24 18:20:49.505767490 +0200
+***************
+*** 3120,3128 ****
+ charset_name = charset_id2name((int)lf.lfCharSet);
+ quality_name = quality_id2name((int)lf.lfQuality);
+
+! res = (char *)alloc((unsigned)(strlen(font_name) + 30
+ + (charset_name == NULL ? 0 : strlen(charset_name) + 2)
+! + (quality_name == NULL ? 0 : strlen(quality_name) + 2)));
+ if (res != NULL)
+ {
+ p = res;
+--- 3120,3128 ----
+ charset_name = charset_id2name((int)lf.lfCharSet);
+ quality_name = quality_id2name((int)lf.lfQuality);
+
+! res = (char *)alloc(strlen(font_name) + 30
+ + (charset_name == NULL ? 0 : strlen(charset_name) + 2)
+! + (quality_name == NULL ? 0 : strlen(quality_name) + 2));
+ if (res != NULL)
+ {
+ p = res;
+***************
+*** 7718,7724 ****
+ }
+
+ /* Allocate menu label and fill it in */
+! text = label = alloc((unsigned)len + 1);
+ if (label == NULL)
+ break;
+
+--- 7718,7724 ----
+ }
+
+ /* Allocate menu label and fill it in */
+! text = label = alloc(len + 1);
+ if (label == NULL)
+ break;
+
+*** ../vim-8.1.1383/src/hashtab.c 2019-01-20 15:30:36.885328746 +0100
+--- src/hashtab.c 2019-05-24 18:21:05.553672909 +0200
+***************
+*** 400,407 ****
+ else
+ {
+ /* Allocate an array. */
+! newarray = (hashitem_T *)alloc((unsigned)
+! (sizeof(hashitem_T) * newsize));
+ if (newarray == NULL)
+ {
+ /* Out of memory. When there are NULL items still return OK.
+--- 400,406 ----
+ else
+ {
+ /* Allocate an array. */
+! newarray = (hashitem_T *)alloc(sizeof(hashitem_T) * newsize);
+ if (newarray == NULL)
+ {
+ /* Out of memory. When there are NULL items still return OK.
+*** ../vim-8.1.1383/src/if_cscope.c 2019-05-23 21:35:44.455922641 +0200
+--- src/if_cscope.c 2019-05-24 18:22:00.389350117 +0200
+***************
+*** 466,472 ****
+ cs_stat_emsg(char *fname)
+ {
+ char *stat_emsg = _("E563: stat(%s) error: %d");
+! char *buf = (char *)alloc((unsigned)strlen(stat_emsg) + MAXPATHL + 10);
+
+ if (buf != NULL)
+ {
+--- 466,472 ----
+ cs_stat_emsg(char *fname)
+ {
+ char *stat_emsg = _("E563: stat(%s) error: %d");
+! char *buf = (char *)alloc(strlen(stat_emsg) + MAXPATHL + 10);
+
+ if (buf != NULL)
+ {
+***************
+*** 543,549 ****
+ /* if filename is a directory, append the cscope database name to it */
+ if (S_ISDIR(statbuf.st_mode))
+ {
+! fname2 = (char *)alloc((unsigned)(strlen(CSCOPE_DBFILE) + strlen(fname) + 2));
+ if (fname2 == NULL)
+ goto add_err;
+
+--- 543,549 ----
+ /* if filename is a directory, append the cscope database name to it */
+ if (S_ISDIR(statbuf.st_mode))
+ {
+! fname2 = (char *)alloc(strlen(CSCOPE_DBFILE) + strlen(fname) + 2);
+ if (fname2 == NULL)
+ goto add_err;
+
+***************
+*** 769,775 ****
+ while VIM_ISWHITE(*pat)
+ ++pat;
+
+! if ((cmd = (char *)alloc((unsigned)(strlen(pat) + 2))) == NULL)
+ return NULL;
+
+ (void)sprintf(cmd, "%d%s", search, pat);
+--- 769,775 ----
+ while VIM_ISWHITE(*pat)
+ ++pat;
+
+! if ((cmd = (char *)alloc(strlen(pat) + 2)) == NULL)
+ return NULL;
+
+ (void)sprintf(cmd, "%d%s", search, pat);
+***************
+*** 1121,1127 ****
+ if (strchr(CSQF_FLAGS, *qfpos) == NULL)
+ {
+ char *nf = _("E469: invalid cscopequickfix flag %c for %c");
+! char *buf = (char *)alloc((unsigned)strlen(nf));
+
+ /* strlen will be enough because we use chars */
+ if (buf != NULL)
+--- 1121,1127 ----
+ if (strchr(CSQF_FLAGS, *qfpos) == NULL)
+ {
+ char *nf = _("E469: invalid cscopequickfix flag %c for %c");
+! char *buf = (char *)alloc(strlen(nf));
+
+ /* strlen will be enough because we use chars */
+ if (buf != NULL)
+***************
+*** 1192,1198 ****
+ return FALSE;
+ }
+
+! buf = (char *)alloc((unsigned)(strlen(opt) + strlen(pat) + strlen(nf)));
+ if (buf == NULL)
+ (void)emsg(nf);
+ else
+--- 1192,1198 ----
+ return FALSE;
+ }
+
+! buf = (char *)alloc(strlen(opt) + strlen(pat) + strlen(nf));
+ if (buf == NULL)
+ (void)emsg(nf);
+ else
+***************
+*** 1450,1463 ****
+ clear_csinfo(j);
+ }
+
+! if ((csinfo[i].fname = (char *)alloc((unsigned)strlen(fname)+1)) == NULL)
+ return -1;
+
+ (void)strcpy(csinfo[i].fname, (const char *)fname);
+
+ if (ppath != NULL)
+ {
+! if ((csinfo[i].ppath = (char *)alloc((unsigned)strlen(ppath) + 1)) == NULL)
+ {
+ VIM_CLEAR(csinfo[i].fname);
+ return -1;
+--- 1450,1463 ----
+ clear_csinfo(j);
+ }
+
+! if ((csinfo[i].fname = (char *)alloc(strlen(fname)+1)) == NULL)
+ return -1;
+
+ (void)strcpy(csinfo[i].fname, (const char *)fname);
+
+ if (ppath != NULL)
+ {
+! if ((csinfo[i].ppath = (char *)alloc(strlen(ppath) + 1)) == NULL)
+ {
+ VIM_CLEAR(csinfo[i].fname);
+ return -1;
+***************
+*** 1468,1474 ****
+
+ if (flags != NULL)
+ {
+! if ((csinfo[i].flags = (char *)alloc((unsigned)strlen(flags) + 1)) == NULL)
+ {
+ VIM_CLEAR(csinfo[i].fname);
+ VIM_CLEAR(csinfo[i].ppath);
+--- 1468,1474 ----
+
+ if (flags != NULL)
+ {
+! if ((csinfo[i].flags = (char *)alloc(strlen(flags) + 1)) == NULL)
+ {
+ VIM_CLEAR(csinfo[i].fname);
+ VIM_CLEAR(csinfo[i].ppath);
+***************
+*** 1820,1826 ****
+ &slno, &search)) == NULL)
+ continue;
+
+! context = (char *)alloc((unsigned)strlen(cntx)+5);
+ if (context == NULL)
+ continue;
+
+--- 1820,1826 ----
+ &slno, &search)) == NULL)
+ continue;
+
+! context = (char *)alloc(strlen(cntx)+5);
+ if (context == NULL)
+ continue;
+
+***************
+*** 1975,1981 ****
+
+ assert(num_matches > 0);
+
+! if ((tbuf = (char *)alloc((unsigned)strlen(matches[0]) + 1)) == NULL)
+ return;
+
+ strcpy(tbuf, matches[0]);
+--- 1975,1981 ----
+
+ assert(num_matches > 0);
+
+! if ((tbuf = (char *)alloc(strlen(matches[0]) + 1)) == NULL)
+ return;
+
+ strcpy(tbuf, matches[0]);
+***************
+*** 2010,2016 ****
+ * by parsing matches[i] on the fly and placing stuff into buf
+ * directly, but that's too much of a hassle
+ */
+! if ((tbuf = (char *)alloc((unsigned)strlen(matches[idx]) + 1)) == NULL)
+ continue;
+ (void)strcpy(tbuf, matches[idx]);
+
+--- 2010,2016 ----
+ * by parsing matches[i] on the fly and placing stuff into buf
+ * directly, but that's too much of a hassle
+ */
+! if ((tbuf = (char *)alloc(strlen(matches[idx]) + 1)) == NULL)
+ continue;
+ (void)strcpy(tbuf, matches[idx]);
+
+*** ../vim-8.1.1383/src/if_perlsfio.c 2016-08-29 22:42:20.000000000 +0200
+--- src/if_perlsfio.c 2019-05-24 18:22:17.913247076 +0200
+***************
+*** 51,57 ****
+ {
+ Sfdisc_t *disc;
+
+! disc = (Sfdisc_t *)alloc((unsigned)sizeof(Sfdisc_t));
+ if (disc == NULL)
+ return NULL;
+
+--- 51,57 ----
+ {
+ Sfdisc_t *disc;
+
+! disc = (Sfdisc_t *)alloc(sizeof(Sfdisc_t));
+ if (disc == NULL)
+ return NULL;
+
+*** ../vim-8.1.1383/src/if_python3.c 2019-03-30 18:46:57.352077376 +0100
+--- src/if_python3.c 2019-05-24 18:22:32.969158589 +0200
+***************
+*** 1629,1635 ****
+ Py_ssize_t len = strlen(str);
+ char *tmp,*p;
+
+! tmp = (char *)alloc((unsigned)(len+1));
+ p = tmp;
+ if (p == NULL)
+ {
+--- 1629,1635 ----
+ Py_ssize_t len = strlen(str);
+ char *tmp,*p;
+
+! tmp = (char *)alloc(len + 1);
+ p = tmp;
+ if (p == NULL)
+ {
+*** ../vim-8.1.1383/src/if_xcmdsrv.c 2019-01-24 15:54:17.786847003 +0100
+--- src/if_xcmdsrv.c 2019-05-24 18:22:52.685042739 +0200
+***************
+*** 441,447 ****
+ * Length must be computed exactly!
+ */
+ length = STRLEN(name) + STRLEN(p_enc) + STRLEN(cmd) + 14;
+! property = (char_u *)alloc((unsigned)length + 30);
+
+ sprintf((char *)property, "%c%c%c-n %s%c-E %s%c-s %s",
+ 0, asExpr ? 'c' : 'k', 0, name, 0, p_enc, 0, cmd);
+--- 441,447 ----
+ * Length must be computed exactly!
+ */
+ length = STRLEN(name) + STRLEN(p_enc) + STRLEN(cmd) + 14;
+! property = (char_u *)alloc(length + 30);
+
+ sprintf((char *)property, "%c%c%c-n %s%c-E %s%c-s %s",
+ 0, asExpr ? 'c' : 'k', 0, name, 0, p_enc, 0, cmd);
+***************
+*** 750,756 ****
+ return -1;
+
+ length = STRLEN(p_enc) + STRLEN(str) + 14;
+! if ((property = (char_u *)alloc((unsigned)length + 30)) != NULL)
+ {
+ sprintf((char *)property, "%cn%c-E %s%c-n %s%c-w %x",
+ 0, 0, p_enc, 0, str, 0, (unsigned int)commWindow);
+--- 750,756 ----
+ return -1;
+
+ length = STRLEN(p_enc) + STRLEN(str) + 14;
+! if ((property = (char_u *)alloc(length + 30)) != NULL)
+ {
+ sprintf((char *)property, "%cn%c-E %s%c-n %s%c-w %x",
+ 0, 0, p_enc, 0, str, 0, (unsigned int)commWindow);
+*** ../vim-8.1.1383/src/indent.c 2019-03-30 18:46:57.356077354 +0100
+--- src/indent.c 2019-05-24 18:23:04.764971811 +0200
+***************
+*** 28,34 ****
+ int len;
+
+ cinw_len = (int)STRLEN(curbuf->b_p_cinw) + 1;
+! cinw_buf = alloc((unsigned)cinw_len);
+ if (cinw_buf != NULL)
+ {
+ line = skipwhite(line);
+--- 28,34 ----
+ int len;
+
+ cinw_len = (int)STRLEN(curbuf->b_p_cinw) + 1;
+! cinw_buf = alloc(cinw_len);
+ if (cinw_buf != NULL)
+ {
+ line = skipwhite(line);
+*** ../vim-8.1.1383/src/insexpand.c 2019-04-28 18:04:56.058492178 +0200
+--- src/insexpand.c 2019-05-24 18:23:29.828824711 +0200
+***************
+*** 473,479 ****
+ ? actual_len : actual_compl_length;
+
+ // Allocate wide character array for the completion and fill it.
+! wca = (int *)alloc((unsigned)(actual_len * sizeof(int)));
+ if (wca != NULL)
+ {
+ p = str;
+--- 473,479 ----
+ ? actual_len : actual_compl_length;
+
+ // Allocate wide character array for the completion and fill it.
+! wca = (int *)alloc(actual_len * sizeof(int));
+ if (wca != NULL)
+ {
+ p = str;
+***************
+*** 1230,1236 ****
+ if (pat_esc == NULL)
+ goto theend;
+ len = STRLEN(pat_esc) + 10;
+! ptr = alloc((unsigned)len);
+ if (ptr == NULL)
+ {
+ vim_free(pat_esc);
+--- 1230,1236 ----
+ if (pat_esc == NULL)
+ goto theend;
+ len = STRLEN(pat_esc) + 10;
+! ptr = alloc(len);
+ if (ptr == NULL)
+ {
+ vim_free(pat_esc);
+*** ../vim-8.1.1383/src/main.c 2019-05-24 13:11:44.311032841 +0200
+--- src/main.c 2019-05-24 18:23:48.016718008 +0200
+***************
+*** 2300,2306 ****
+ }
+ else
+ a = argv[0];
+! p = alloc((unsigned)(STRLEN(a) + 4));
+ if (p == NULL)
+ mch_exit(2);
+ sprintf((char *)p, "so %s", a);
+--- 2300,2306 ----
+ }
+ else
+ a = argv[0];
+! p = alloc(STRLEN(a) + 4);
+ if (p == NULL)
+ mch_exit(2);
+ sprintf((char *)p, "so %s", a);
+***************
+*** 2526,2532 ****
+ * one. */
+ if (parmp->n_commands > 0)
+ {
+! p = alloc((unsigned)STRLEN(parmp->commands[0]) + 3);
+ if (p != NULL)
+ {
+ sprintf((char *)p, ":%s\r", parmp->commands[0]);
+--- 2526,2532 ----
+ * one. */
+ if (parmp->n_commands > 0)
+ {
+! p = alloc(STRLEN(parmp->commands[0]) + 3);
+ if (p != NULL)
+ {
+ sprintf((char *)p, ":%s\r", parmp->commands[0]);
+***************
+*** 4263,4269 ****
+ size_t len = STRLEN(cmd) + STRLEN(err) + 5;
+ char_u *msg;
+
+! msg = alloc((unsigned)len);
+ if (msg != NULL)
+ vim_snprintf((char *)msg, len, "%s: \"%s\"", err, cmd);
+ *result = msg;
+--- 4263,4269 ----
+ size_t len = STRLEN(cmd) + STRLEN(err) + 5;
+ char_u *msg;
+
+! msg = alloc(len);
+ if (msg != NULL)
+ vim_snprintf((char *)msg, len, "%s: \"%s\"", err, cmd);
+ *result = msg;
+*** ../vim-8.1.1383/src/mbyte.c 2019-04-28 19:46:17.030060105 +0200
+--- src/mbyte.c 2019-05-24 18:24:05.176617375 +0200
+***************
+*** 4317,4323 ****
+ }
+
+ /* copy "enc" to allocated memory, with room for two '-' */
+! r = alloc((unsigned)(STRLEN(enc) + 3));
+ if (r != NULL)
+ {
+ /* Make it all lower case and replace '_' with '-'. */
+--- 4317,4323 ----
+ }
+
+ /* copy "enc" to allocated memory, with room for two '-' */
+! r = alloc(STRLEN(enc) + 3);
+ if (r != NULL)
+ {
+ /* Make it all lower case and replace '_' with '-'. */
+***************
+*** 4603,4609 ****
+ /* Allocate enough room for most conversions. When re-allocating
+ * increase the buffer size. */
+ len = len + fromlen * 2 + 40;
+! p = alloc((unsigned)len);
+ if (p != NULL && done > 0)
+ mch_memmove(p, result, done);
+ vim_free(result);
+--- 4603,4609 ----
+ /* Allocate enough room for most conversions. When re-allocating
+ * increase the buffer size. */
+ len = len + fromlen * 2 + 40;
+! p = alloc(len);
+ if (p != NULL && done > 0)
+ mch_memmove(p, result, done);
+ vim_free(result);
+*** ../vim-8.1.1383/src/memfile.c 2019-02-17 17:44:36.211875510 +0100
+--- src/memfile.c 2019-05-24 18:24:20.648526679 +0200
+***************
+*** 130,136 ****
+ struct STATFS stf;
+ #endif
+
+! if ((mfp = (memfile_T *)alloc((unsigned)sizeof(memfile_T))) == NULL)
+ return NULL;
+
+ if (fname == NULL) /* no file for this memfile, use memory only */
+--- 130,136 ----
+ struct STATFS stf;
+ #endif
+
+! if ((mfp = (memfile_T *)alloc(sizeof(memfile_T))) == NULL)
+ return NULL;
+
+ if (fname == NULL) /* no file for this memfile, use memory only */
+***************
+*** 893,899 ****
+ {
+ bhdr_T *hp;
+
+! if ((hp = (bhdr_T *)alloc((unsigned)sizeof(bhdr_T))) != NULL)
+ {
+ if ((hp->bh_data = (char_u *)alloc(mfp->mf_page_size * page_count))
+ == NULL)
+--- 893,899 ----
+ {
+ bhdr_T *hp;
+
+! if ((hp = (bhdr_T *)alloc(sizeof(bhdr_T))) != NULL)
+ {
+ if ((hp->bh_data = (char_u *)alloc(mfp->mf_page_size * page_count))
+ == NULL)
+***************
+*** 1108,1114 ****
+ if (hp->bh_bnum >= 0) /* it's already positive */
+ return OK;
+
+! if ((np = (NR_TRANS *)alloc((unsigned)sizeof(NR_TRANS))) == NULL)
+ return FAIL;
+
+ /*
+--- 1108,1114 ----
+ if (hp->bh_bnum >= 0) /* it's already positive */
+ return OK;
+
+! if ((np = (NR_TRANS *)alloc(sizeof(NR_TRANS))) == NULL)
+ return FAIL;
+
+ /*
+*** ../vim-8.1.1383/src/memline.c 2019-05-23 21:35:44.455922641 +0200
+--- src/memline.c 2019-05-24 18:25:09.856334524 +0200
+***************
+*** 1189,1195 ****
+ * Allocate a buffer structure for the swap file that is used for recovery.
+ * Only the memline and crypt information in it are really used.
+ */
+! buf = (buf_T *)alloc((unsigned)sizeof(buf_T));
+ if (buf == NULL)
+ goto theend;
+
+--- 1189,1195 ----
+ * Allocate a buffer structure for the swap file that is used for recovery.
+ * Only the memline and crypt information in it are really used.
+ */
+! buf = (buf_T *)alloc(sizeof(buf_T));
+ if (buf == NULL)
+ goto theend;
+
+***************
+*** 1787,1793 ****
+ * Do the loop for every directory in 'directory'.
+ * First allocate some memory to put the directory name in.
+ */
+! dir_name = alloc((unsigned)STRLEN(p_dir) + 1);
+ dirp = p_dir;
+ while (dir_name != NULL && *dirp)
+ {
+--- 1787,1793 ----
+ * Do the loop for every directory in 'directory'.
+ * First allocate some memory to put the directory name in.
+ */
+! dir_name = alloc(STRLEN(p_dir) + 1);
+ dirp = p_dir;
+ while (dir_name != NULL && *dirp)
+ {
+***************
+*** 1913,1919 ****
+ {
+ if (mch_stat((char *)swapname, &st) != -1) /* It exists! */
+ {
+! files = (char_u **)alloc((unsigned)sizeof(char_u *));
+ if (files != NULL)
+ {
+ files[0] = swapname;
+--- 1913,1919 ----
+ {
+ if (mch_stat((char *)swapname, &st) != -1) /* It exists! */
+ {
+! files = (char_u **)alloc(sizeof(char_u *));
+ if (files != NULL)
+ {
+ files[0] = swapname;
+***************
+*** 2015,2021 ****
+ f = fix_fname(name != NULL ? name : (char_u *)"");
+ if (f != NULL)
+ {
+! s = alloc((unsigned)(STRLEN(f) + 1));
+ if (s != NULL)
+ {
+ STRCPY(s, f);
+--- 2015,2021 ----
+ f = fix_fname(name != NULL ? name : (char_u *)"");
+ if (f != NULL)
+ {
+! s = alloc(STRLEN(f) + 1);
+ if (s != NULL)
+ {
+ STRCPY(s, f);
+***************
+*** 2674,2680 ****
+ if (new_prop_count == 0)
+ return; // nothing to do
+ new_len = *len + new_prop_count * sizeof(textprop_T);
+! new_line = alloc((unsigned)new_len);
+ if (new_line == NULL)
+ return;
+ mch_memmove(new_line, *line, *len);
+--- 2674,2680 ----
+ if (new_prop_count == 0)
+ return; // nothing to do
+ new_len = *len + new_prop_count * sizeof(textprop_T);
+! new_line = alloc(new_len);
+ if (new_line == NULL)
+ return;
+ mch_memmove(new_line, *line, *len);
+***************
+*** 4201,4207 ****
+ {
+ CHECK(top > 0, _("Stack size increases")); /* more than 5 levels??? */
+
+! newstack = (infoptr_T *)alloc((unsigned)sizeof(infoptr_T) *
+ (buf->b_ml.ml_stack_size + STACK_INCR));
+ if (newstack == NULL)
+ return -1;
+--- 4201,4207 ----
+ {
+ CHECK(top > 0, _("Stack size increases")); /* more than 5 levels??? */
+
+! newstack = (infoptr_T *)alloc(sizeof(infoptr_T) *
+ (buf->b_ml.ml_stack_size + STACK_INCR));
+ if (newstack == NULL)
+ return -1;
+***************
+*** 4596,4602 ****
+ * Isolate a directory name from *dirp and put it in dir_name.
+ * First allocate some memory to put the directory name in.
+ */
+! dir_name = alloc((unsigned)STRLEN(*dirp) + 1);
+ if (dir_name == NULL)
+ *dirp = NULL;
+ else
+--- 4596,4602 ----
+ * Isolate a directory name from *dirp and put it in dir_name.
+ * First allocate some memory to put the directory name in.
+ */
+! dir_name = alloc(STRLEN(*dirp) + 1);
+ if (dir_name == NULL)
+ *dirp = NULL;
+ else
+***************
+*** 4920,4928 ****
+ {
+ char_u *name;
+
+! name = alloc((unsigned)(STRLEN(fname)
+ + STRLEN(_("Swap file \""))
+! + STRLEN(_("\" already exists!")) + 5));
+ if (name != NULL)
+ {
+ STRCPY(name, _("Swap file \""));
+--- 4920,4928 ----
+ {
+ char_u *name;
+
+! name = alloc(STRLEN(fname)
+ + STRLEN(_("Swap file \""))
+! + STRLEN(_("\" already exists!")) + 5);
+ if (name != NULL)
+ {
+ STRCPY(name, _("Swap file \""));
+***************
+*** 5371,5378 ****
+ return;
+ if (buf->b_ml.ml_chunksize == NULL)
+ {
+! buf->b_ml.ml_chunksize = (chunksize_T *)
+! alloc((unsigned)sizeof(chunksize_T) * 100);
+ if (buf->b_ml.ml_chunksize == NULL)
+ {
+ buf->b_ml.ml_usedchunks = -1;
+--- 5371,5378 ----
+ return;
+ if (buf->b_ml.ml_chunksize == NULL)
+ {
+! buf->b_ml.ml_chunksize =
+! (chunksize_T *)alloc(sizeof(chunksize_T) * 100);
+ if (buf->b_ml.ml_chunksize == NULL)
+ {
+ buf->b_ml.ml_usedchunks = -1;
+*** ../vim-8.1.1383/src/menu.c 2019-05-05 14:19:17.594303166 +0200
+--- src/menu.c 2019-05-24 18:25:34.852270671 +0200
+***************
+*** 694,700 ****
+ * \'s and ^V's stripped out. But menu_path is a "raw"
+ * string, so we must correct for special characters.
+ */
+! tearpath = alloc((unsigned int)STRLEN(menu_path) + TEAR_LEN + 2);
+ if (tearpath != NULL)
+ {
+ char_u *s;
+--- 694,700 ----
+ * \'s and ^V's stripped out. But menu_path is a "raw"
+ * string, so we must correct for special characters.
+ */
+! tearpath = alloc(STRLEN(menu_path) + TEAR_LEN + 2);
+ if (tearpath != NULL)
+ {
+ char_u *s;
+***************
+*** 780,786 ****
+
+ if (c != 0)
+ {
+! menu->strings[i] = alloc((unsigned)(STRLEN(call_data) + 5 ));
+ if (menu->strings[i] != NULL)
+ {
+ menu->strings[i][0] = c;
+--- 780,786 ----
+
+ if (c != 0)
+ {
+! menu->strings[i] = alloc(STRLEN(call_data) + 5);
+ if (menu->strings[i] != NULL)
+ {
+ menu->strings[i][0] = c;
+***************
+*** 1316,1322 ****
+ menu = root_menu;
+ if (after_dot != arg)
+ {
+! path_name = alloc((unsigned)(after_dot - arg));
+ if (path_name == NULL)
+ return NULL;
+ vim_strncpy(path_name, arg, after_dot - arg - 1);
+--- 1316,1322 ----
+ menu = root_menu;
+ if (after_dot != arg)
+ {
+! path_name = alloc(after_dot - arg);
+ if (path_name == NULL)
+ return NULL;
+ vim_strncpy(path_name, arg, after_dot - arg - 1);
+*** ../vim-8.1.1383/src/message.c 2019-05-09 15:12:45.172723940 +0200
+--- src/message.c 2019-05-24 18:25:53.980219465 +0200
+***************
+*** 437,443 ****
+ if (sourcing_name != NULL && other_sourcing_name())
+ {
+ p = (char_u *)_("Error detected while processing %s:");
+! Buf = alloc((unsigned)(STRLEN(sourcing_name) + STRLEN(p)));
+ if (Buf != NULL)
+ sprintf((char *)Buf, (char *)p, sourcing_name);
+ return Buf;
+--- 437,443 ----
+ if (sourcing_name != NULL && other_sourcing_name())
+ {
+ p = (char_u *)_("Error detected while processing %s:");
+! Buf = alloc(STRLEN(sourcing_name) + STRLEN(p));
+ if (Buf != NULL)
+ sprintf((char *)Buf, (char *)p, sourcing_name);
+ return Buf;
+***************
+*** 462,468 ****
+ && sourcing_lnum != 0)
+ {
+ p = (char_u *)_("line %4ld:");
+! Buf = alloc((unsigned)(STRLEN(p) + 20));
+ if (Buf != NULL)
+ sprintf((char *)Buf, (char *)p, (long)sourcing_lnum);
+ return Buf;
+--- 462,468 ----
+ && sourcing_lnum != 0)
+ {
+ p = (char_u *)_("line %4ld:");
+! Buf = alloc(STRLEN(p) + 20);
+ if (Buf != NULL)
+ sprintf((char *)Buf, (char *)p, (long)sourcing_lnum);
+ return Buf;
+*** ../vim-8.1.1383/src/misc1.c 2019-05-23 21:35:44.455922641 +0200
+--- src/misc1.c 2019-05-24 18:26:40.432087320 +0200
+***************
+*** 2180,2186 ****
+ pend1 = remove_tail(p, pend, (char_u *)"MacOS");
+ if (pend1 != pend)
+ {
+! pnew = alloc((unsigned)(pend1 - p) + 15);
+ if (pnew != NULL)
+ {
+ STRNCPY(pnew, p, (pend1 - p));
+--- 2180,2186 ----
+ pend1 = remove_tail(p, pend, (char_u *)"MacOS");
+ if (pend1 != pend)
+ {
+! pnew = alloc(pend1 - p + 15);
+ if (pnew != NULL)
+ {
+ STRNCPY(pnew, p, (pend1 - p));
+***************
+*** 2341,2347 ****
+ * Putenv does not copy the string, it has to remain
+ * valid. The allocated memory will never be freed.
+ */
+! envbuf = alloc((unsigned)(STRLEN(name) + STRLEN(val) + 2));
+ if (envbuf != NULL)
+ {
+ sprintf((char *)envbuf, "%s=%s", name, val);
+--- 2341,2347 ----
+ * Putenv does not copy the string, it has to remain
+ * valid. The allocated memory will never be freed.
+ */
+! envbuf = alloc(STRLEN(name) + STRLEN(val) + 2);
+ if (envbuf != NULL)
+ {
+ sprintf((char *)envbuf, "%s=%s", name, val);
+***************
+*** 3019,3025 ****
+ {
+ char_u *dest;
+
+! dest = alloc((unsigned)(STRLEN(fname1) + STRLEN(fname2) + 3));
+ if (dest != NULL)
+ {
+ STRCPY(dest, fname1);
+--- 3019,3025 ----
+ {
+ char_u *dest;
+
+! dest = alloc(STRLEN(fname1) + STRLEN(fname2) + 3);
+ if (dest != NULL)
+ {
+ STRCPY(dest, fname1);
+***************
+*** 3040,3046 ****
+ char_u *dest;
+ size_t l = STRLEN(str1);
+
+! dest = alloc((unsigned)(l + STRLEN(str2) + 1L));
+ if (dest != NULL)
+ {
+ STRCPY(dest, str1);
+--- 3040,3046 ----
+ char_u *dest;
+ size_t l = STRLEN(str1);
+
+! dest = alloc(l + STRLEN(str2) + 1L);
+ if (dest != NULL)
+ {
+ STRCPY(dest, str1);
+***************
+*** 3076,3082 ****
+ if (fname == NULL)
+ return NULL;
+
+! buf = alloc((unsigned)MAXPATHL);
+ if (buf != NULL)
+ {
+ if (vim_FullName(fname, buf, MAXPATHL, force) != FAIL)
+--- 3076,3082 ----
+ if (fname == NULL)
+ return NULL;
+
+! buf = alloc(MAXPATHL);
+ if (buf != NULL)
+ {
+ if (vim_FullName(fname, buf, MAXPATHL, force) != FAIL)
+***************
+*** 4231,4237 ****
+ if (ga_grow(gap, 1) == FAIL)
+ return;
+
+! p = alloc((unsigned)(STRLEN(f) + 1 + isdir));
+ if (p == NULL)
+ return;
+
+--- 4231,4237 ----
+ if (ga_grow(gap, 1) == FAIL)
+ return;
+
+! p = alloc(STRLEN(f) + 1 + isdir);
+ if (p == NULL)
+ return;
+
+*** ../vim-8.1.1383/src/netbeans.c 2019-03-30 18:46:57.356077354 +0100
+--- src/netbeans.c 2019-05-24 18:27:53.783857939 +0200
+***************
+*** 790,796 ****
+
+ nbdebug(("REP %d: %s\n", cmdno, (char *)result));
+
+! reply = alloc((unsigned)STRLEN(result) + 32);
+ sprintf((char *)reply, "%d %s\n", cmdno, (char *)result);
+ nb_send((char *)reply, "nb_reply_text");
+
+--- 790,796 ----
+
+ nbdebug(("REP %d: %s\n", cmdno, (char *)result));
+
+! reply = alloc(STRLEN(result) + 32);
+ sprintf((char *)reply, "%d %s\n", cmdno, (char *)result);
+ nb_send((char *)reply, "nb_reply_text");
+
+***************
+*** 819,825 ****
+ static char_u *
+ nb_quote(char_u *txt)
+ {
+! char_u *buf = alloc((unsigned)(2 * STRLEN(txt) + 1));
+ char_u *p = txt;
+ char_u *q = buf;
+
+--- 819,825 ----
+ static char_u *
+ nb_quote(char_u *txt)
+ {
+! char_u *buf = alloc(2 * STRLEN(txt) + 1);
+ char_u *p = txt;
+ char_u *q = buf;
+
+***************
+*** 951,957 ****
+
+ len_first = (int)STRLEN(ml_get(first));
+ len_other = (int)STRLEN(ml_get(other));
+! p = alloc((unsigned)(len_first + len_other + 1));
+ if (p != NULL)
+ {
+ mch_memmove(p, ml_get(first), len_first);
+--- 951,957 ----
+
+ len_first = (int)STRLEN(ml_get(first));
+ len_other = (int)STRLEN(ml_get(other));
+! p = alloc(len_first + len_other + 1);
+ if (p != NULL)
+ {
+ mch_memmove(p, ml_get(first), len_first);
+***************
+*** 1084,1091 ****
+ {
+ len = get_buf_size(buf->bufp);
+ nlines = buf->bufp->b_ml.ml_line_count;
+! text = alloc((unsigned)((len > 0)
+! ? ((len + nlines) * 2) : 4));
+ if (text == NULL)
+ {
+ nbdebug((" nb_do_cmd: getText has null text field\n"));
+--- 1084,1090 ----
+ {
+ len = get_buf_size(buf->bufp);
+ nlines = buf->bufp->b_ml.ml_line_count;
+! text = alloc((len > 0) ? ((len + nlines) * 2) : 4);
+ if (text == NULL)
+ {
+ nbdebug((" nb_do_cmd: getText has null text field\n"));
+***************
+*** 1395,1402 ****
+ char_u *newline;
+
+ /* Insert halfway a line. */
+! newline = alloc_check(
+! (unsigned)(STRLEN(oldline) + len + 1));
+ if (newline != NULL)
+ {
+ mch_memmove(newline, oldline, (size_t)pos->col);
+--- 1394,1400 ----
+ char_u *newline;
+
+ /* Insert halfway a line. */
+! newline = alloc(STRLEN(oldline) + len + 1);
+ if (newline != NULL)
+ {
+ mch_memmove(newline, oldline, (size_t)pos->col);
+*** ../vim-8.1.1383/src/ops.c 2019-05-19 22:53:36.508914587 +0200
+--- src/ops.c 2019-05-24 18:29:06.455608724 +0200
+***************
+*** 456,462 ****
+ /* if we're splitting a TAB, allow for it */
+ bd.textcol -= bd.pre_whitesp_c - (bd.startspaces != 0);
+ len = (int)STRLEN(bd.textstart) + 1;
+! newp = alloc_check((unsigned)(bd.textcol + i + j + len));
+ if (newp == NULL)
+ return;
+ vim_memset(newp, NUL, (size_t)(bd.textcol + i + j + len));
+--- 456,462 ----
+ /* if we're splitting a TAB, allow for it */
+ bd.textcol -= bd.pre_whitesp_c - (bd.startspaces != 0);
+ len = (int)STRLEN(bd.textstart) + 1;
+! newp = alloc(bd.textcol + i + j + len);
+ if (newp == NULL)
+ return;
+ vim_memset(newp, NUL, (size_t)(bd.textcol + i + j + len));
+***************
+*** 550,556 ****
+ + fill
+ + (unsigned)STRLEN(non_white) + 1;
+
+! newp = alloc_check(new_line_len);
+ if (newp == NULL)
+ return;
+ mch_memmove(newp, oldp, (size_t)(verbatim_copy_end - oldp));
+--- 550,556 ----
+ + fill
+ + (unsigned)STRLEN(non_white) + 1;
+
+! newp = alloc(new_line_len);
+ if (newp == NULL)
+ return;
+ mch_memmove(newp, oldp, (size_t)(verbatim_copy_end - oldp));
+***************
+*** 644,650 ****
+ count -= off;
+ }
+
+! newp = alloc_check((unsigned)(STRLEN(oldp)) + s_len + count + 1);
+ if (newp == NULL)
+ continue;
+
+--- 644,650 ----
+ count -= off;
+ }
+
+! newp = alloc(STRLEN(oldp) + s_len + count + 1);
+ if (newp == NULL)
+ continue;
+
+***************
+*** 1003,1009 ****
+ #endif
+
+ get_yank_register(name, 0);
+! reg = (yankreg_T *)alloc((unsigned)sizeof(yankreg_T));
+ if (reg != NULL)
+ {
+ *reg = *y_current;
+--- 1003,1009 ----
+ #endif
+
+ get_yank_register(name, 0);
+! reg = (yankreg_T *)alloc(sizeof(yankreg_T));
+ if (reg != NULL)
+ {
+ *reg = *y_current;
+***************
+*** 1013,1020 ****
+ if (reg->y_size == 0)
+ reg->y_array = NULL;
+ else
+! reg->y_array = (char_u **)alloc((unsigned)(sizeof(char_u *)
+! * reg->y_size));
+ if (reg->y_array != NULL)
+ {
+ for (i = 0; i < reg->y_size; ++i)
+--- 1013,1019 ----
+ if (reg->y_size == 0)
+ reg->y_array = NULL;
+ else
+! reg->y_array = (char_u **)alloc(sizeof(char_u *) * reg->y_size);
+ if (reg->y_array != NULL)
+ {
+ for (i = 0; i < reg->y_size; ++i)
+***************
+*** 1177,1183 ****
+ {
+ free_yank_all();
+ if ((y_current->y_array =
+! (char_u **)alloc((unsigned)sizeof(char_u *))) == NULL)
+ {
+ vim_free(p);
+ return FAIL;
+--- 1176,1182 ----
+ {
+ free_yank_all();
+ if ((y_current->y_array =
+! (char_u **)alloc(sizeof(char_u *))) == NULL)
+ {
+ vim_free(p);
+ return FAIL;
+***************
+*** 1921,1927 ****
+ // Thus the number of characters may increase!
+ n = bd.textlen - bd.startspaces - bd.endspaces;
+ oldp = ml_get(lnum);
+! newp = alloc_check((unsigned)STRLEN(oldp) + 1 - n);
+ if (newp == NULL)
+ continue;
+ /* copy up to deleted part */
+--- 1920,1926 ----
+ // Thus the number of characters may increase!
+ n = bd.textlen - bd.startspaces - bd.endspaces;
+ oldp = ml_get(lnum);
+! newp = alloc(STRLEN(oldp) + 1 - n);
+ if (newp == NULL)
+ continue;
+ /* copy up to deleted part */
+***************
+*** 2227,2233 ****
+
+ oldp = ml_get_curline();
+ oldlen = STRLEN(oldp);
+! newp = alloc_check((unsigned)oldlen + 1 + n);
+ if (newp == NULL)
+ continue;
+ vim_memset(newp, NUL, (size_t)(oldlen + 1 + n));
+--- 2226,2232 ----
+
+ oldp = ml_get_curline();
+ oldlen = STRLEN(oldp);
+! newp = alloc(oldlen + 1 + n);
+ if (newp == NULL)
+ continue;
+ vim_memset(newp, NUL, (size_t)(oldlen + 1 + n));
+***************
+*** 2260,2267 ****
+ else
+ {
+ /* Replacing with \r or \n means splitting the line. */
+! after_p = alloc_check(
+! (unsigned)(oldlen + 1 + n - STRLEN(newp)));
+ if (after_p != NULL)
+ STRMOVE(after_p, oldp);
+ }
+--- 2259,2265 ----
+ else
+ {
+ /* Replacing with \r or \n means splitting the line. */
+! after_p = alloc(oldlen + 1 + n - STRLEN(newp));
+ if (after_p != NULL)
+ STRMOVE(after_p, oldp);
+ }
+***************
+*** 2869,2875 ****
+ {
+ /* Subsequent calls to ml_get() flush the firstline data - take a
+ * copy of the inserted text. */
+! if ((ins_text = alloc_check((unsigned)(ins_len + 1))) != NULL)
+ {
+ vim_strncpy(ins_text, firstline + bd.textcol, (size_t)ins_len);
+ for (linenr = oap->start.lnum + 1; linenr <= oap->end.lnum;
+--- 2867,2873 ----
+ {
+ /* Subsequent calls to ml_get() flush the firstline data - take a
+ * copy of the inserted text. */
+! if ((ins_text = alloc(ins_len + 1)) != NULL)
+ {
+ vim_strncpy(ins_text, firstline + bd.textcol, (size_t)ins_len);
+ for (linenr = oap->start.lnum + 1; linenr <= oap->end.lnum;
+***************
+*** 2890,2897 ****
+ else
+ vpos.coladd = 0;
+ oldp = ml_get(linenr);
+! newp = alloc_check((unsigned)(STRLEN(oldp)
+! + vpos.coladd + ins_len + 1));
+ if (newp == NULL)
+ continue;
+ /* copy up to block start */
+--- 2888,2894 ----
+ else
+ vpos.coladd = 0;
+ oldp = ml_get(linenr);
+! newp = alloc(STRLEN(oldp) + vpos.coladd + ins_len + 1);
+ if (newp == NULL)
+ continue;
+ /* copy up to block start */
+***************
+*** 3494,3501 ****
+ }
+ if (y_array != NULL)
+ break;
+! y_array = (char_u **)alloc((unsigned)
+! (y_size * sizeof(char_u *)));
+ if (y_array == NULL)
+ goto end;
+ }
+--- 3491,3497 ----
+ }
+ if (y_array != NULL)
+ break;
+! y_array = (char_u **)alloc((y_size * sizeof(char_u *)));
+ if (y_array == NULL)
+ goto end;
+ }
+***************
+*** 3741,3747 ****
+
+ /* insert the new text */
+ totlen = count * (yanklen + spaces) + bd.startspaces + bd.endspaces;
+! newp = alloc_check((unsigned)totlen + oldlen + 1);
+ if (newp == NULL)
+ break;
+ /* copy part up to cursor to new line */
+--- 3737,3743 ----
+
+ /* insert the new text */
+ totlen = count * (yanklen + spaces) + bd.startspaces + bd.endspaces;
+! newp = alloc(totlen + oldlen + 1);
+ if (newp == NULL)
+ break;
+ /* copy part up to cursor to new line */
+***************
+*** 3868,3874 ****
+ lnum++;
+ continue;
+ }
+! newp = alloc_check((unsigned)(STRLEN(oldp) + totlen + 1));
+ if (newp == NULL)
+ goto end; /* alloc() gave an error message */
+ mch_memmove(newp, oldp, (size_t)col);
+--- 3864,3870 ----
+ lnum++;
+ continue;
+ }
+! newp = alloc(STRLEN(oldp) + totlen + 1);
+ if (newp == NULL)
+ goto end; /* alloc() gave an error message */
+ mch_memmove(newp, oldp, (size_t)col);
+***************
+*** 3920,3926 ****
+ lnum = new_cursor.lnum;
+ ptr = ml_get(lnum) + col;
+ totlen = (int)STRLEN(y_array[y_size - 1]);
+! newp = alloc_check((unsigned)(STRLEN(ptr) + totlen + 1));
+ if (newp == NULL)
+ goto error;
+ STRCPY(newp, y_array[y_size - 1]);
+--- 3916,3922 ----
+ lnum = new_cursor.lnum;
+ ptr = ml_get(lnum) + col;
+ totlen = (int)STRLEN(y_array[y_size - 1]);
+! newp = alloc(STRLEN(ptr) + totlen + 1);
+ if (newp == NULL)
+ goto error;
+ STRCPY(newp, y_array[y_size - 1]);
+***************
+*** 3930,3936 ****
+ vim_free(newp);
+
+ oldp = ml_get(lnum);
+! newp = alloc_check((unsigned)(col + yanklen + 1));
+ if (newp == NULL)
+ goto error;
+ /* copy first part of line */
+--- 3926,3932 ----
+ vim_free(newp);
+
+ oldp = ml_get(lnum);
+! newp = alloc(col + yanklen + 1);
+ if (newp == NULL)
+ goto error;
+ /* copy first part of line */
+***************
+*** 4563,4569 ****
+ col = sumsize - currsize - spaces[count - 1];
+
+ /* allocate the space for the new line */
+! newp = alloc_check((unsigned)(sumsize + 1));
+ cend = newp + sumsize;
+ *cend = 0;
+
+--- 4559,4565 ----
+ col = sumsize - currsize - spaces[count - 1];
+
+ /* allocate the space for the new line */
+! newp = alloc(sumsize + 1);
+ cend = newp + sumsize;
+ *cend = 0;
+
+***************
+*** 5880,5886 ****
+ * When there are many leading zeros it could be very long.
+ * Allocate a bit too much.
+ */
+! buf1 = alloc((unsigned)length + NUMBUFLEN);
+ if (buf1 == NULL)
+ goto theend;
+ ptr = buf1;
+--- 5876,5882 ----
+ * When there are many leading zeros it could be very long.
+ * Allocate a bit too much.
+ */
+! buf1 = alloc(length + NUMBUFLEN);
+ if (buf1 == NULL)
+ goto theend;
+ ptr = buf1;
+***************
+*** 6055,6061 ****
+ */
+ if (set_prev)
+ y_previous = y_current;
+! array = (char_u **)alloc((unsigned)(limit * sizeof(char_u *)));
+ str = skipwhite(skiptowhite(str));
+ if (STRNCMP(str, "CHAR", 4) == 0)
+ new_type = MCHAR;
+--- 6051,6057 ----
+ */
+ if (set_prev)
+ y_previous = y_current;
+! array = (char_u **)alloc(limit * sizeof(char_u *));
+ str = skipwhite(skiptowhite(str));
+ if (STRNCMP(str, "CHAR", 4) == 0)
+ new_type = MCHAR;
+***************
+*** 6076,6082 ****
+ if (size == limit)
+ {
+ char_u **new_array = (char_u **)
+! alloc((unsigned)(limit * 2 * sizeof(char_u *)));
+
+ if (new_array == NULL)
+ {
+--- 6072,6078 ----
+ if (size == limit)
+ {
+ char_u **new_array = (char_u **)
+! alloc(limit * 2 * sizeof(char_u *));
+
+ if (new_array == NULL)
+ {
+***************
+*** 6116,6123 ****
+ else
+ {
+ /* Move the lines from array[] to y_array[]. */
+! y_current->y_array =
+! (char_u **)alloc((unsigned)(size * sizeof(char_u *)));
+ for (i = 0; i < size; i++)
+ {
+ if (y_current->y_array == NULL)
+--- 6112,6118 ----
+ else
+ {
+ /* Move the lines from array[] to y_array[]. */
+! y_current->y_array = (char_u **)alloc(size * sizeof(char_u *));
+ for (i = 0; i < size; i++)
+ {
+ if (y_current->y_array == NULL)
+***************
+*** 6214,6220 ****
+ y_ptr->y_array = NULL;
+ return;
+ }
+! y_ptr->y_array = (char_u **)alloc((unsigned)(linecount * sizeof(char_u *)));
+ if (y_ptr->y_array == NULL)
+ {
+ y_ptr->y_size = 0; // ensure object state is consistent
+--- 6209,6215 ----
+ y_ptr->y_array = NULL;
+ return;
+ }
+! y_ptr->y_array = (char_u **)alloc(linecount * sizeof(char_u *));
+ if (y_ptr->y_array == NULL)
+ {
+ y_ptr->y_size = 0; // ensure object state is consistent
+***************
+*** 7145,7151 ****
+ }
+ else
+ extra = 0;
+! s = alloc((unsigned)(i + extra + 1));
+ if (s == NULL)
+ break;
+ if (extra)
+--- 7140,7146 ----
+ }
+ else
+ extra = 0;
+! s = alloc(i + extra + 1);
+ if (s == NULL)
+ break;
+ if (extra)
+*** ../vim-8.1.1383/src/option.c 2019-05-23 17:08:40.824565813 +0200
+--- src/option.c 2019-05-24 18:29:56.039427541 +0200
+***************
+*** 3430,3436 ****
+ cdpath = vim_getenv((char_u *)"CDPATH", &mustfree);
+ if (cdpath != NULL)
+ {
+! buf = alloc((unsigned)((STRLEN(cdpath) << 1) + 2));
+ if (buf != NULL)
+ {
+ buf[0] = ','; /* start with ",", current dir first */
+--- 3430,3436 ----
+ cdpath = vim_getenv((char_u *)"CDPATH", &mustfree);
+ if (cdpath != NULL)
+ {
+! buf = alloc((STRLEN(cdpath) << 1) + 2);
+ if (buf != NULL)
+ {
+ buf[0] = ','; /* start with ",", current dir first */
+***************
+*** 7913,7919 ****
+ wp->w_p_cc_cols = NULL;
+ else
+ {
+! wp->w_p_cc_cols = (int *)alloc((unsigned)sizeof(int) * (count + 1));
+ if (wp->w_p_cc_cols != NULL)
+ {
+ /* sort the columns for faster usage on screen redraw inside
+--- 7913,7919 ----
+ wp->w_p_cc_cols = NULL;
+ else
+ {
+! wp->w_p_cc_cols = (int *)alloc(sizeof(int) * (count + 1));
+ if (wp->w_p_cc_cols != NULL)
+ {
+ /* sort the columns for faster usage on screen redraw inside
+***************
+*** 10053,10060 ****
+ #define INC 20
+ #define GAP 3
+
+! items = (struct vimoption **)alloc((unsigned)(sizeof(struct vimoption *) *
+! PARAM_COUNT));
+ if (items == NULL)
+ return;
+
+--- 10053,10060 ----
+ #define INC 20
+ #define GAP 3
+
+! items = (struct vimoption **)alloc(sizeof(struct vimoption *)
+! * PARAM_COUNT);
+ if (items == NULL)
+ return;
+
+***************
+*** 11941,11947 ****
+ *num_file = num_term;
+ else
+ return OK;
+! *file = (char_u **)alloc((unsigned)(*num_file * sizeof(char_u *)));
+ if (*file == NULL)
+ {
+ *file = (char_u **)"";
+--- 11941,11947 ----
+ *num_file = num_term;
+ else
+ return OK;
+! *file = (char_u **)alloc(*num_file * sizeof(char_u *));
+ if (*file == NULL)
+ {
+ *file = (char_u **)"";
+***************
+*** 11959,11965 ****
+ char_u *buf;
+
+ *num_file = 0;
+! *file = (char_u **)alloc((unsigned)sizeof(char_u *));
+ if (*file == NULL)
+ return FAIL;
+
+--- 11959,11965 ----
+ char_u *buf;
+
+ *num_file = 0;
+! *file = (char_u **)alloc(sizeof(char_u *));
+ if (*file == NULL)
+ return FAIL;
+
+***************
+*** 12822,12828 ****
+ return FALSE;
+ }
+
+! *array = (int *)alloc((unsigned) ((valcount + 1) * sizeof(int)));
+ if (*array == NULL)
+ return FALSE;
+ (*array)[0] = valcount;
+--- 12822,12828 ----
+ return FALSE;
+ }
+
+! *array = (int *)alloc((valcount + 1) * sizeof(int));
+ if (*array == NULL)
+ return FALSE;
+ (*array)[0] = valcount;
+***************
+*** 13045,13051 ****
+
+ if (oldts == NULL)
+ return NULL;
+! newts = (int *)alloc((unsigned)((oldts[0] + 1) * sizeof(int)));
+ if (newts != NULL)
+ for (t = 0; t <= oldts[0]; ++t)
+ newts[t] = oldts[t];
+--- 13045,13051 ----
+
+ if (oldts == NULL)
+ return NULL;
+! newts = (int *)alloc((oldts[0] + 1) * sizeof(int));
+ if (newts != NULL)
+ for (t = 0; t <= oldts[0]; ++t)
+ newts[t] = oldts[t];
+*** ../vim-8.1.1383/src/os_amiga.c 2019-01-24 16:38:58.272712472 +0100
+--- src/os_amiga.c 2019-05-24 18:30:12.755364635 +0200
+***************
+*** 1467,1473 ****
+ {
+ #endif
+ /* hack to replace '*' by '#?' */
+! starbuf = alloc((unsigned)(2 * STRLEN(pat) + 1));
+ if (starbuf == NULL)
+ goto Return;
+ for (sp = pat, dp = starbuf; *sp; ++sp)
+--- 1467,1473 ----
+ {
+ #endif
+ /* hack to replace '*' by '#?' */
+! starbuf = alloc(2 * STRLEN(pat) + 1);
+ if (starbuf == NULL)
+ goto Return;
+ for (sp = pat, dp = starbuf; *sp; ++sp)
+*** ../vim-8.1.1383/src/os_mswin.c 2019-05-09 15:12:45.176723907 +0200
+--- src/os_mswin.c 2019-05-24 18:30:31.887291592 +0200
+***************
+*** 1466,1473 ****
+ char_u *port_name = utf16_to_enc(wport_name, NULL);
+
+ if (printer_name != NULL && port_name != NULL)
+! prt_name = alloc((unsigned)(STRLEN(printer_name)
+! + STRLEN(port_name) + STRLEN(text)));
+ if (prt_name != NULL)
+ wsprintf((char *)prt_name, (const char *)text,
+ printer_name, port_name);
+--- 1466,1473 ----
+ char_u *port_name = utf16_to_enc(wport_name, NULL);
+
+ if (printer_name != NULL && port_name != NULL)
+! prt_name = alloc(STRLEN(printer_name)
+! + STRLEN(port_name) + STRLEN(text));
+ if (prt_name != NULL)
+ wsprintf((char *)prt_name, (const char *)text,
+ printer_name, port_name);
+***************
+*** 2111,2117 ****
+ char *err = _(e_invexprmsg);
+ size_t len = STRLEN(str) + STRLEN(err) + 5;
+
+! res = alloc((unsigned)len);
+ if (res != NULL)
+ vim_snprintf((char *)res, len, "%s: \"%s\"", err, str);
+ reply.dwData = COPYDATA_ERROR_RESULT;
+--- 2111,2117 ----
+ char *err = _(e_invexprmsg);
+ size_t len = STRLEN(str) + STRLEN(err) + 5;
+
+! res = alloc(len);
+ if (res != NULL)
+ vim_snprintf((char *)res, len, "%s: \"%s\"", err, str);
+ reply.dwData = COPYDATA_ERROR_RESULT;
+***************
+*** 2340,2346 ****
+ char_u *p;
+
+ /* Leave enough space for a 9-digit suffix to ensure uniqueness! */
+! ok_name = alloc((unsigned)STRLEN(name) + 10);
+
+ STRCPY(ok_name, name);
+ p = ok_name + STRLEN(name);
+--- 2340,2346 ----
+ char_u *p;
+
+ /* Leave enough space for a 9-digit suffix to ensure uniqueness! */
+! ok_name = alloc(STRLEN(name) + 10);
+
+ STRCPY(ok_name, name);
+ p = ok_name + STRLEN(name);
+*** ../vim-8.1.1383/src/os_unix.c 2019-05-09 18:59:27.228463605 +0200
+--- src/os_unix.c 2019-05-24 18:30:50.731218535 +0200
+***************
+*** 2447,2453 ****
+ #endif
+
+ /*
+! * Get name of current directory into buffer 'buf' of length 'len' bytes.
+ * Return OK for success, FAIL for failure.
+ */
+ int
+--- 2447,2454 ----
+ #endif
+
+ /*
+! * Get name of current directory into buffer "buf" of length "len" bytes.
+! * "len" must be at least PATH_MAX.
+ * Return OK for success, FAIL for failure.
+ */
+ int
+***************
+*** 2516,2522 ****
+ {
+ /*
+ * If the file name has a path, change to that directory for a moment,
+! * and then do the getwd() (and get back to where we were).
+ * This will get the correct path name with "../" things.
+ */
+ if (p != NULL)
+--- 2517,2523 ----
+ {
+ /*
+ * If the file name has a path, change to that directory for a moment,
+! * and then get the directory (and get back to where we were).
+ * This will get the correct path name with "../" things.
+ */
+ if (p != NULL)
+***************
+*** 3124,3130 ****
+ p = (char_u *)getenv("PATH");
+ if (p == NULL || *p == NUL)
+ return -1;
+! buf = alloc((unsigned)(STRLEN(name) + STRLEN(p) + 2));
+ if (buf == NULL)
+ return -1;
+
+--- 3125,3131 ----
+ p = (char_u *)getenv("PATH");
+ if (p == NULL || *p == NUL)
+ return -1;
+! buf = alloc(STRLEN(name) + STRLEN(p) + 2);
+ if (buf == NULL)
+ return -1;
+
+***************
+*** 4323,4329 ****
+
+ /* Break 'shellcmdflag' into white separated parts. This doesn't
+ * handle quoted strings, they are very unlikely to appear. */
+! *shcf_tofree = alloc((unsigned)STRLEN(p_shcf) + 1);
+ if (*shcf_tofree == NULL) /* out of memory */
+ return FAIL;
+ s = *shcf_tofree;
+--- 4324,4330 ----
+
+ /* Break 'shellcmdflag' into white separated parts. This doesn't
+ * handle quoted strings, they are very unlikely to appear. */
+! *shcf_tofree = alloc(STRLEN(p_shcf) + 1);
+ if (*shcf_tofree == NULL) /* out of memory */
+ return FAIL;
+ s = *shcf_tofree;
+***************
+*** 6899,6905 ****
+ && !mch_can_exe((*file)[i], NULL, !(flags & EW_SHELLCMD)))
+ continue;
+
+! p = alloc((unsigned)(STRLEN((*file)[i]) + 1 + dir));
+ if (p)
+ {
+ STRCPY(p, (*file)[i]);
+--- 6900,6906 ----
+ && !mch_can_exe((*file)[i], NULL, !(flags & EW_SHELLCMD)))
+ continue;
+
+! p = alloc(STRLEN((*file)[i]) + 1 + dir);
+ if (p)
+ {
+ STRCPY(p, (*file)[i]);
+*** ../vim-8.1.1383/src/os_vms.c 2018-04-23 20:39:51.000000000 +0200
+--- src/os_vms.c 2019-05-24 18:31:05.687159822 +0200
+***************
+*** 238,244 ****
+ if (sys$trnlnm(&attrib, &d_file_dev, &d_lognam, NULL,&itmlst) == SS$_NORMAL)
+ {
+ buffer[lengte] = '\0';
+! if (cp = (char_u *)alloc((unsigned)(lengte+1)))
+ strcpy((char *)cp, buffer);
+ return(cp);
+ }
+--- 238,244 ----
+ if (sys$trnlnm(&attrib, &d_file_dev, &d_lognam, NULL,&itmlst) == SS$_NORMAL)
+ {
+ buffer[lengte] = '\0';
+! if (cp = (char_u *)alloc(lengte + 1))
+ strcpy((char *)cp, buffer);
+ return(cp);
+ }
+*** ../vim-8.1.1383/src/os_win32.c 2019-05-24 13:32:33.148376324 +0200
+--- src/os_win32.c 2019-05-24 18:31:46.874994828 +0200
+***************
+*** 2075,2082 ****
+ return FALSE;
+
+ wcurpath = _wgetenv(L"PATH");
+! wnewpath = (WCHAR*)alloc((unsigned)(wcslen(wcurpath) + 3)
+! * sizeof(WCHAR));
+ if (wnewpath == NULL)
+ return FALSE;
+ wcscpy(wnewpath, L".;");
+--- 2075,2081 ----
+ return FALSE;
+
+ wcurpath = _wgetenv(L"PATH");
+! wnewpath = (WCHAR *)alloc((wcslen(wcurpath) + 3) * sizeof(WCHAR));
+ if (wnewpath == NULL)
+ return FALSE;
+ wcscpy(wnewpath, L".;");
+***************
+*** 7205,7211 ****
+ char_u *envbuf;
+ WCHAR *p;
+
+! envbuf = alloc((unsigned)(STRLEN(var) + STRLEN(value) + 2));
+ if (envbuf == NULL)
+ return -1;
+
+--- 7204,7210 ----
+ char_u *envbuf;
+ WCHAR *p;
+
+! envbuf = alloc(STRLEN(var) + STRLEN(value) + 2);
+ if (envbuf == NULL)
+ return -1;
+
+*** ../vim-8.1.1383/src/quickfix.c 2019-05-09 21:48:29.033295465 +0200
+--- src/quickfix.c 2019-05-24 18:32:11.446894295 +0200
+***************
+*** 1346,1352 ****
+ if (*fields->errmsg && !qfl->qf_multiignore)
+ {
+ len = (int)STRLEN(qfprev->qf_text);
+! if ((ptr = alloc((unsigned)(len + STRLEN(fields->errmsg) + 2)))
+ == NULL)
+ return QF_FAIL;
+ STRCPY(ptr, qfprev->qf_text);
+--- 1346,1352 ----
+ if (*fields->errmsg && !qfl->qf_multiignore)
+ {
+ len = (int)STRLEN(qfprev->qf_text);
+! if ((ptr = alloc(len + STRLEN(fields->errmsg) + 2))
+ == NULL)
+ return QF_FAIL;
+ STRCPY(ptr, qfprev->qf_text);
+***************
+*** 1890,1896 ****
+ {
+ qf_delq_T *q;
+
+! q = (qf_delq_T *)alloc((unsigned)sizeof(qf_delq_T));
+ if (q != NULL)
+ {
+ q->qi = qi;
+--- 1890,1896 ----
+ {
+ qf_delq_T *q;
+
+! q = (qf_delq_T *)alloc(sizeof(qf_delq_T));
+ if (q != NULL)
+ {
+ q->qi = qi;
+***************
+*** 2063,2069 ****
+ qfline_T *qfp;
+ qfline_T **lastp; // pointer to qf_last or NULL
+
+! if ((qfp = (qfline_T *)alloc((unsigned)sizeof(qfline_T))) == NULL)
+ return QF_FAIL;
+ if (bufnum != 0)
+ {
+--- 2063,2069 ----
+ qfline_T *qfp;
+ qfline_T **lastp; // pointer to qf_last or NULL
+
+! if ((qfp = (qfline_T *)alloc(sizeof(qfline_T))) == NULL)
+ return QF_FAIL;
+ if (bufnum != 0)
+ {
+***************
+*** 2429,2435 ****
+ struct dir_stack_T *ds_ptr;
+
+ // allocate new stack element and hook it in
+! ds_new = (struct dir_stack_T *)alloc((unsigned)sizeof(struct dir_stack_T));
+ if (ds_new == NULL)
+ return NULL;
+
+--- 2429,2435 ----
+ struct dir_stack_T *ds_ptr;
+
+ // allocate new stack element and hook it in
+! ds_new = (struct dir_stack_T *)alloc(sizeof(struct dir_stack_T));
+ if (ds_new == NULL)
+ return NULL;
+
+***************
+*** 4707,4713 ****
+ else
+ off += 19;
+
+! name = alloc((unsigned)STRLEN(p_mef) + 30);
+ if (name == NULL)
+ break;
+ STRCPY(name, p_mef);
+--- 4707,4713 ----
+ else
+ off += 19;
+
+! name = alloc(STRLEN(p_mef) + 30);
+ if (name == NULL)
+ break;
+ STRCPY(name, p_mef);
+*** ../vim-8.1.1383/src/regexp.c 2019-05-11 18:28:41.351611622 +0200
+--- src/regexp.c 2019-05-24 18:32:23.502844410 +0200
+***************
+*** 7145,7151 ****
+ {
+ /* length = len(newsub) - 1 + len(prev_sub) + 1 */
+ prevlen = (int)STRLEN(reg_prev_sub);
+! tmpsub = alloc((unsigned)(STRLEN(newsub) + prevlen));
+ if (tmpsub != NULL)
+ {
+ /* copy prefix */
+--- 7145,7151 ----
+ {
+ /* length = len(newsub) - 1 + len(prev_sub) + 1 */
+ prevlen = (int)STRLEN(reg_prev_sub);
+! tmpsub = alloc(STRLEN(newsub) + prevlen);
+ if (tmpsub != NULL)
+ {
+ /* copy prefix */
+*** ../vim-8.1.1383/src/screen.c 2019-05-17 13:05:03.795770160 +0200
+--- src/screen.c 2019-05-24 18:32:45.106754126 +0200
+***************
+*** 4948,4954 ****
+ if (n_extra > 0)
+ len += n_extra - tab_len;
+ c = lcs_tab1;
+! p = alloc((unsigned)(len + 1));
+ vim_memset(p, ' ', len);
+ p[len] = NUL;
+ vim_free(p_extra_free);
+--- 4948,4954 ----
+ if (n_extra > 0)
+ len += n_extra - tab_len;
+ c = lcs_tab1;
+! p = alloc(len + 1);
+ vim_memset(p, ' ', len);
+ p[len] = NUL;
+ vim_free(p_extra_free);
+***************
+*** 5107,5113 ****
+ char_u *p;
+
+ c = *p_extra;
+! p = alloc((unsigned)n_extra + 1);
+ vim_memset(p, ' ', n_extra);
+ STRNCPY(p, p_extra + 1, STRLEN(p_extra) - 1);
+ p[n_extra] = NUL;
+--- 5107,5113 ----
+ char_u *p;
+
+ c = *p_extra;
+! p = alloc(n_extra + 1);
+ vim_memset(p, ' ', n_extra);
+ STRNCPY(p, p_extra + 1, STRLEN(p_extra) - 1);
+ p[n_extra] = NUL;
+***************
+*** 6680,6688 ****
+ return;
+
+ if (has_mbyte)
+! buf = alloc((unsigned)Columns * MB_MAXBYTES + 1);
+ else
+! buf = alloc((unsigned)Columns + 1);
+ if (buf == NULL)
+ return;
+
+--- 6680,6688 ----
+ return;
+
+ if (has_mbyte)
+! buf = alloc(Columns * MB_MAXBYTES + 1);
+ else
+! buf = alloc(Columns + 1);
+ if (buf == NULL)
+ return;
+
+*** ../vim-8.1.1383/src/spell.c 2019-05-23 21:35:44.459922615 +0200
+--- src/spell.c 2019-05-24 18:33:22.506595221 +0200
+***************
+*** 2083,2089 ****
+ hi = hash_lookup(&lp->sl_wordcount, p, hash);
+ if (HASHITEM_EMPTY(hi))
+ {
+! wc = (wordcount_T *)alloc((unsigned)(sizeof(wordcount_T) + STRLEN(p)));
+ if (wc == NULL)
+ return;
+ STRCPY(wc->wc_word, p);
+--- 2083,2089 ----
+ hi = hash_lookup(&lp->sl_wordcount, p, hash);
+ if (HASHITEM_EMPTY(hi))
+ {
+! wc = (wordcount_T *)alloc(sizeof(wordcount_T) + STRLEN(p));
+ if (wc == NULL)
+ return;
+ STRCPY(wc->wc_word, p);
+***************
+*** 3432,3439 ****
+ }
+
+ /* Replace the word. */
+! p = alloc((unsigned)STRLEN(line) - stp->st_orglen
+! + stp->st_wordlen + 1);
+ if (p != NULL)
+ {
+ c = (int)(sug.su_badptr - line);
+--- 3432,3438 ----
+ }
+
+ /* Replace the word. */
+! p = alloc(STRLEN(line) - stp->st_orglen + stp->st_wordlen + 1);
+ if (p != NULL)
+ {
+ c = (int)(sug.su_badptr - line);
+***************
+*** 3552,3558 ****
+ }
+ addlen = (int)(STRLEN(repl_to) - STRLEN(repl_from));
+
+! frompat = alloc((unsigned)STRLEN(repl_from) + 7);
+ if (frompat == NULL)
+ return;
+ sprintf((char *)frompat, "\\V\\<%s\\>", repl_from);
+--- 3551,3557 ----
+ }
+ addlen = (int)(STRLEN(repl_to) - STRLEN(repl_from));
+
+! frompat = alloc(STRLEN(repl_from) + 7);
+ if (frompat == NULL)
+ return;
+ sprintf((char *)frompat, "\\V\\<%s\\>", repl_from);
+***************
+*** 3573,3579 ****
+ if (addlen <= 0 || STRNCMP(line + curwin->w_cursor.col,
+ repl_to, STRLEN(repl_to)) != 0)
+ {
+! p = alloc((unsigned)STRLEN(line) + addlen + 1);
+ if (p == NULL)
+ break;
+ mch_memmove(p, line, curwin->w_cursor.col);
+--- 3572,3578 ----
+ if (addlen <= 0 || STRNCMP(line + curwin->w_cursor.col,
+ repl_to, STRLEN(repl_to)) != 0)
+ {
+! p = alloc(STRLEN(line) + addlen + 1);
+ if (p == NULL)
+ break;
+ mch_memmove(p, line, curwin->w_cursor.col);
+***************
+*** 6224,6231 ****
+ hi = hash_lookup(&slang->sl_sounddone, goodword, hash);
+ if (HASHITEM_EMPTY(hi))
+ {
+! sft = (sftword_T *)alloc((unsigned)(sizeof(sftword_T)
+! + STRLEN(goodword)));
+ if (sft != NULL)
+ {
+ sft->sft_score = score;
+--- 6223,6229 ----
+ hi = hash_lookup(&slang->sl_sounddone, goodword, hash);
+ if (HASHITEM_EMPTY(hi))
+ {
+! sft = (sftword_T *)alloc(sizeof(sftword_T) + STRLEN(goodword));
+ if (sft != NULL)
+ {
+ sft->sft_score = score;
+*** ../vim-8.1.1383/src/spellfile.c 2019-05-23 21:35:44.459922615 +0200
+--- src/spellfile.c 2019-05-24 18:34:23.734328606 +0200
+***************
+*** 1264,1270 ****
+ c = todo * 2 + 7;
+ if (enc_utf8)
+ c += todo * 2;
+! pat = alloc((unsigned)c);
+ if (pat == NULL)
+ return SP_OTHERERROR;
+
+--- 1264,1270 ----
+ c = todo * 2 + 7;
+ if (enc_utf8)
+ c += todo * 2;
+! pat = alloc(c);
+ if (pat == NULL)
+ return SP_OTHERERROR;
+
+***************
+*** 6615,6621 ****
+ hash_T hash;
+ hashitem_T *hi;
+
+! b = alloc((unsigned)(cl + headcl + 2));
+ if (b == NULL)
+ return;
+ mb_char2bytes(c, b);
+--- 6615,6621 ----
+ hash_T hash;
+ hashitem_T *hi;
+
+! b = alloc(cl + headcl + 2);
+ if (b == NULL)
+ return;
+ mb_char2bytes(c, b);
+*** ../vim-8.1.1383/src/syntax.c 2019-05-09 19:26:34.132388790 +0200
+--- src/syntax.c 2019-05-24 18:35:02.090157843 +0200
+***************
+*** 4757,4763 ****
+ if (curwin->w_s->b_syn_topgrp >= SYNID_CLUSTER)
+ {
+ /* We have to alloc this, because syn_combine_list() will free it. */
+! short *grp_list = (short *)alloc((unsigned)(2 * sizeof(short)));
+ int tlg_id = curwin->w_s->b_syn_topgrp - SYNID_CLUSTER;
+
+ if (grp_list != NULL)
+--- 4757,4763 ----
+ if (curwin->w_s->b_syn_topgrp >= SYNID_CLUSTER)
+ {
+ /* We have to alloc this, because syn_combine_list() will free it. */
+! short *grp_list = (short *)alloc(2 * sizeof(short));
+ int tlg_id = curwin->w_s->b_syn_topgrp - SYNID_CLUSTER;
+
+ if (grp_list != NULL)
+***************
+*** 4872,4878 ****
+ syn_id = syn_check_group(arg, (int)(group_name_end - arg));
+ if (syn_id != 0)
+ /* allocate a buffer, for removing backslashes in the keyword */
+! keyword_copy = alloc((unsigned)STRLEN(rest) + 1);
+ if (keyword_copy != NULL)
+ {
+ syn_opt_arg.flags = 0;
+--- 4872,4878 ----
+ syn_id = syn_check_group(arg, (int)(group_name_end - arg));
+ if (syn_id != 0)
+ /* allocate a buffer, for removing backslashes in the keyword */
+! keyword_copy = alloc(STRLEN(rest) + 1);
+ if (keyword_copy != NULL)
+ {
+ syn_opt_arg.flags = 0;
+***************
+*** 5208,5214 ****
+ * syn_patterns for this item, at the start (because the list is
+ * used from end to start).
+ */
+! ppp = (struct pat_ptr *)alloc((unsigned)sizeof(struct pat_ptr));
+ if (ppp == NULL)
+ {
+ rest = NULL;
+--- 5208,5214 ----
+ * syn_patterns for this item, at the start (because the list is
+ * used from end to start).
+ */
+! ppp = (struct pat_ptr *)alloc(sizeof(struct pat_ptr));
+ if (ppp == NULL)
+ {
+ rest = NULL;
+***************
+*** 5465,5471 ****
+ clstr = NULL;
+ break;
+ }
+! clstr = (short *)alloc((unsigned)((count + 1) * sizeof(short)));
+ if (clstr == NULL)
+ break;
+ clstr[count] = 0;
+--- 5465,5471 ----
+ clstr = NULL;
+ break;
+ }
+! clstr = (short *)alloc((count + 1) * sizeof(short));
+ if (clstr == NULL)
+ break;
+ clstr[count] = 0;
+***************
+*** 6124,6130 ****
+ break;
+ if (round == 1)
+ {
+! retval = (short *)alloc((unsigned)((count + 1) * sizeof(short)));
+ if (retval == NULL)
+ break;
+ retval[count] = 0; /* zero means end of the list */
+--- 6124,6130 ----
+ break;
+ if (round == 1)
+ {
+! retval = (short *)alloc((count + 1) * sizeof(short));
+ if (retval == NULL)
+ break;
+ retval[count] = 0; /* zero means end of the list */
+***************
+*** 6163,6169 ****
+ for (count = 0; list[count]; ++count)
+ ;
+ len = (count + 1) * sizeof(short);
+! retval = (short *)alloc((unsigned)len);
+ if (retval != NULL)
+ mch_memmove(retval, list, (size_t)len);
+
+--- 6163,6169 ----
+ for (count = 0; list[count]; ++count)
+ ;
+ len = (count + 1) * sizeof(short);
+! retval = (short *)alloc(len);
+ if (retval != NULL)
+ mch_memmove(retval, list, (size_t)len);
+
+***************
+*** 7167,7173 ****
+ return OK;
+
+ recursive = TRUE;
+! buf = alloc((unsigned)(STRLEN(name) + 12));
+ if (buf != NULL)
+ {
+ apply_autocmds(EVENT_COLORSCHEMEPRE, name,
+--- 7167,7173 ----
+ return OK;
+
+ recursive = TRUE;
+! buf = alloc(STRLEN(name) + 12);
+ if (buf != NULL)
+ {
+ apply_autocmds(EVENT_COLORSCHEMEPRE, name,
+*** ../vim-8.1.1383/src/term.c 2019-05-11 21:38:54.076825521 +0200
+--- src/term.c 2019-05-24 18:35:17.846086915 +0200
+***************
+*** 6165,6171 ****
+ * Allocate space for the translation. Worst case a single character is
+ * replaced by 6 bytes (shifted special key), plus a NUL at the end.
+ */
+! result = alloc((unsigned)STRLEN(from) * 6 + 1);
+ if (result == NULL) /* out of memory */
+ {
+ *bufp = NULL;
+--- 6165,6171 ----
+ * Allocate space for the translation. Worst case a single character is
+ * replaced by 6 bytes (shifted special key), plus a NUL at the end.
+ */
+! result = alloc(STRLEN(from) * 6 + 1);
+ if (result == NULL) /* out of memory */
+ {
+ *bufp = NULL;
+***************
+*** 6420,6426 ****
+
+ if (tc_len == 0) /* no terminal codes (must be GUI) */
+ return;
+! items = (int *)alloc((unsigned)(sizeof(int) * tc_len));
+ if (items == NULL)
+ return;
+
+--- 6420,6426 ----
+
+ if (tc_len == 0) /* no terminal codes (must be GUI) */
+ return;
+! items = (int *)alloc(sizeof(int) * tc_len);
+ if (items == NULL)
+ return;
+
+*** ../vim-8.1.1383/src/undo.c 2019-05-11 13:09:39.131391135 +0200
+--- src/undo.c 2019-05-24 18:35:35.814005483 +0200
+***************
+*** 367,372 ****
+--- 367,374 ----
+ }
+ else
+ {
++ // This uses the length in the memline, thus text properties are
++ // included.
+ ul->ul_len = curbuf->b_ml.ml_line_len;
+ ul->ul_line = vim_memsave(line, ul->ul_len);
+ }
+***************
+*** 1121,1127 ****
+ static char_u *
+ read_string_decrypt(bufinfo_T *bi, int len)
+ {
+! char_u *ptr = alloc((unsigned)len + 1);
+
+ if (ptr != NULL)
+ {
+--- 1123,1129 ----
+ static char_u *
+ read_string_decrypt(bufinfo_T *bi, int len)
+ {
+! char_u *ptr = alloc(len + 1);
+
+ if (ptr != NULL)
+ {
+***************
+*** 2689,2695 ****
+ char_u *p = ml_get(top + 1 + i);
+
+ if (curbuf->b_ml.ml_line_len != uep->ue_array[i].ul_len
+! || memcmp(uep->ue_array[i].ul_line, p, curbuf->b_ml.ml_line_len) != 0)
+ break;
+ }
+ if (i == newsize && newlnum == MAXLNUM && uep->ue_next == NULL)
+--- 2691,2698 ----
+ char_u *p = ml_get(top + 1 + i);
+
+ if (curbuf->b_ml.ml_line_len != uep->ue_array[i].ul_len
+! || memcmp(uep->ue_array[i].ul_line, p,
+! curbuf->b_ml.ml_line_len) != 0)
+ break;
+ }
+ if (i == newsize && newlnum == MAXLNUM && uep->ue_next == NULL)
+***************
+*** 2750,2758 ****
+ // If the file is empty, there is an empty line 1 that we
+ // should get rid of, by replacing it with the new line.
+ if (empty_buffer && lnum == 0)
+! ml_replace_len((linenr_T)1, uep->ue_array[i].ul_line, uep->ue_array[i].ul_len, TRUE, TRUE);
+ else
+! ml_append(lnum, uep->ue_array[i].ul_line, (colnr_T)uep->ue_array[i].ul_len, FALSE);
+ vim_free(uep->ue_array[i].ul_line);
+ }
+ vim_free((char_u *)uep->ue_array);
+--- 2753,2763 ----
+ // If the file is empty, there is an empty line 1 that we
+ // should get rid of, by replacing it with the new line.
+ if (empty_buffer && lnum == 0)
+! ml_replace_len((linenr_T)1, uep->ue_array[i].ul_line,
+! uep->ue_array[i].ul_len, TRUE, TRUE);
+ else
+! ml_append(lnum, uep->ue_array[i].ul_line,
+! (colnr_T)uep->ue_array[i].ul_len, FALSE);
+ vim_free(uep->ue_array[i].ul_line);
+ }
+ vim_free((char_u *)uep->ue_array);
+*** ../vim-8.1.1383/src/usercmd.c 2019-05-04 14:05:05.210240329 +0200
+--- src/usercmd.c 2019-05-24 18:35:50.509938477 +0200
+***************
+*** 1637,1643 ****
+ }
+
+ totlen += STRLEN(p); // Add on the trailing characters
+! buf = alloc((unsigned)(totlen + 1));
+ if (buf == NULL)
+ {
+ vim_free(split_buf);
+--- 1637,1643 ----
+ }
+
+ totlen += STRLEN(p); // Add on the trailing characters
+! buf = alloc(totlen + 1);
+ if (buf == NULL)
+ {
+ vim_free(split_buf);
+*** ../vim-8.1.1383/src/userfunc.c 2019-05-19 21:37:14.189063500 +0200
+--- src/userfunc.c 2019-05-24 18:36:15.301824670 +0200
+***************
+*** 557,563 ****
+ }
+ else
+ {
+! fname = alloc((unsigned)(i + STRLEN(name + llen) + 1));
+ if (fname == NULL)
+ *error = ERROR_OTHER;
+ else
+--- 557,563 ----
+ }
+ else
+ {
+! fname = alloc(i + STRLEN(name + llen) + 1);
+ if (fname == NULL)
+ *error = ERROR_OTHER;
+ else
+***************
+*** 978,984 ****
+ /* need space for function name + ("function " + 3) or "[number]" */
+ len = (save_sourcing_name == NULL ? 0 : STRLEN(save_sourcing_name))
+ + STRLEN(fp->uf_name) + 20;
+! sourcing_name = alloc((unsigned)len);
+ if (sourcing_name != NULL)
+ {
+ if (save_sourcing_name != NULL
+--- 978,984 ----
+ /* need space for function name + ("function " + 3) or "[number]" */
+ len = (save_sourcing_name == NULL ? 0 : STRLEN(save_sourcing_name))
+ + STRLEN(fp->uf_name) + 20;
+! sourcing_name = alloc(len);
+ if (sourcing_name != NULL)
+ {
+ if (save_sourcing_name != NULL
+***************
+*** 1932,1938 ****
+ }
+ }
+
+! name = alloc((unsigned)(len + lead + 1));
+ if (name != NULL)
+ {
+ if (lead > 0)
+--- 1932,1938 ----
+ }
+ }
+
+! name = alloc(len + lead + 1);
+ if (name != NULL)
+ {
+ if (lead > 0)
+***************
+*** 2787,2793 ****
+ if (todo == 0)
+ return; /* nothing to dump */
+
+! sorttab = (ufunc_T **)alloc((unsigned)(sizeof(ufunc_T *) * todo));
+
+ for (hi = func_hashtab.ht_array; todo > 0; ++hi)
+ {
+--- 2787,2793 ----
+ if (todo == 0)
+ return; /* nothing to dump */
+
+! sorttab = (ufunc_T **)alloc(sizeof(ufunc_T *) * todo);
+
+ for (hi = func_hashtab.ht_array; todo > 0; ++hi)
+ {
+*** ../vim-8.1.1383/src/version.c 2019-05-24 17:55:47.511425702 +0200
+--- src/version.c 2019-05-24 18:39:19.684951278 +0200
+***************
+*** 61,67 ****
+ + strlen(VIM_VERSION_DATE_ONLY)
+ + strlen(date_time);
+
+! longVersion = (char *)alloc((unsigned)len);
+ if (longVersion == NULL)
+ longVersion = VIM_VERSION_LONG;
+ else
+--- 61,67 ----
+ + strlen(VIM_VERSION_DATE_ONLY)
+ + strlen(date_time);
+
+! longVersion = (char *)alloc(len);
+ if (longVersion == NULL)
+ longVersion = VIM_VERSION_LONG;
+ else
+*** ../vim-8.1.1383/src/winclip.c 2019-02-27 14:11:56.977675599 +0100
+--- src/winclip.c 2019-05-24 18:37:01.665609331 +0200
+***************
+*** 169,175 ****
+ {
+ *outlen = WideCharToMultiByte(cp, flags, in, inlen, NULL, 0, def, useddef);
+ /* Add one one byte to avoid a zero-length alloc(). */
+! *out = (LPSTR)alloc((unsigned)*outlen + 1);
+ if (*out != NULL)
+ {
+ WideCharToMultiByte(cp, flags, in, inlen, *out, *outlen, def, useddef);
+--- 169,175 ----
+ {
+ *outlen = WideCharToMultiByte(cp, flags, in, inlen, NULL, 0, def, useddef);
+ /* Add one one byte to avoid a zero-length alloc(). */
+! *out = (LPSTR)alloc(*outlen + 1);
+ if (*out != NULL)
+ {
+ WideCharToMultiByte(cp, flags, in, inlen, *out, *outlen, def, useddef);
+***************
+*** 512,519 ****
+ metadata.txtlen = WideCharToMultiByte(GetACP(), 0, out, len,
+ NULL, 0, 0, 0);
+ vim_free(str);
+! str = (char_u *)alloc((unsigned)(metadata.txtlen == 0 ? 1
+! : metadata.txtlen));
+ if (str == NULL)
+ {
+ vim_free(out);
+--- 512,518 ----
+ metadata.txtlen = WideCharToMultiByte(GetACP(), 0, out, len,
+ NULL, 0, 0, 0);
+ vim_free(str);
+! str = (char_u *)alloc(metadata.txtlen == 0 ? 1 : metadata.txtlen);
+ if (str == NULL)
+ {
+ vim_free(out);
+***************
+*** 655,661 ****
+ convert_setup(&conv, NULL, NULL);
+
+ length = utf8_to_utf16(str, *lenp, NULL, NULL);
+! ret = (WCHAR *)alloc((unsigned)((length + 1) * sizeof(WCHAR)));
+ if (ret != NULL)
+ {
+ utf8_to_utf16(str, *lenp, (short_u *)ret, NULL);
+--- 654,660 ----
+ convert_setup(&conv, NULL, NULL);
+
+ length = utf8_to_utf16(str, *lenp, NULL, NULL);
+! ret = (WCHAR *)alloc((length + 1) * sizeof(WCHAR));
+ if (ret != NULL)
+ {
+ utf8_to_utf16(str, *lenp, (short_u *)ret, NULL);
+*** ../vim-8.1.1383/src/version.c 2019-05-24 17:55:47.511425702 +0200
+--- src/version.c 2019-05-24 18:39:19.684951278 +0200
+***************
+*** 769,770 ****
+--- 769,772 ----
+ { /* Add new patch number below this line */
++ /**/
++ 1384,
+ /**/
+
+--
+How To Keep A Healthy Level Of Insanity:
+14. Put mosquito netting around your work area. Play a tape of jungle
+ sounds all day.
+
+ /// 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 ///