summaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-08-20 21:58:00 +0200
committerBram Moolenaar <Bram@vim.org>2019-08-20 21:58:00 +0200
commit1058c9d9b5815467182d487f10f6dd71385cb796 (patch)
tree9e56b6734fa3299a46509b3e778b67b970609532 /src/eval.c
parentf1e0544d413b8b2ea129db0655b4e123d54177a6 (diff)
patch 8.1.1894: not checking for out-of-memory of autoload_name()v8.1.1894
Problem: Not checking for out-of-memory of autoload_name(). Solution: Check for NULL. (Dominique Pelle, closes #4846)
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/eval.c b/src/eval.c
index 3f2a33a98a..5c5fd2f10d 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -9439,7 +9439,7 @@ autoload_name(char_u *name)
// Get the script file name: replace '#' with '/', append ".vim".
scriptname = alloc(STRLEN(name) + 14);
if (scriptname == NULL)
- return FALSE;
+ return NULL;
STRCPY(scriptname, "autoload/");
STRCAT(scriptname, name);
for (p = scriptname + 9; (p = vim_strchr(p, AUTOLOAD_CHAR)) != NULL;
@@ -9469,6 +9469,8 @@ script_autoload(
return FALSE;
tofree = scriptname = autoload_name(name);
+ if (scriptname == NULL)
+ return FALSE;
/* Find the name in the list of previously loaded package names. Skip
* "autoload/", it's always the same. */