summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2015-12-03 17:43:17 +0100
committerBram Moolenaar <Bram@vim.org>2015-12-03 17:43:17 +0100
commitf609dcf8c1094f6fc95f4fc36321a1fb08a7110c (patch)
tree21088be14cf9f39cbfffd204967ca853997fca6d
parentde0ad40cb3c1bc691a754698ed16a5b6cdb4086b (diff)
downloadvim-git-f609dcf8c1094f6fc95f4fc36321a1fb08a7110c.tar.gz
patch 7.4.954v7.4.954
Problem: When using Lua there may be a crash. (issue #468) Solution: Avoid using an unitialized tv. (Yukihiro Nakadaira)
-rw-r--r--src/if_lua.c3
-rw-r--r--src/version.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/if_lua.c b/src/if_lua.c
index bc2d6c367..e94c96dff 100644
--- a/src/if_lua.c
+++ b/src/if_lua.c
@@ -1561,14 +1561,15 @@ luaV_setref (lua_State *L)
{
tv.v_type = VAR_LIST;
tv.vval.v_list = (list_T *) lua_touserdata(L, 4); /* key */
+ abort = set_ref_in_item(&tv, copyID, NULL, NULL);
}
else if (lua_rawequal(L, -1, 3)) /* dict? */
{
tv.v_type = VAR_DICT;
tv.vval.v_dict = (dict_T *) lua_touserdata(L, 4); /* key */
+ abort = set_ref_in_item(&tv, copyID, NULL, NULL);
}
lua_pop(L, 2); /* metatable and value */
- abort = set_ref_in_item(&tv, copyID, NULL, NULL);
}
lua_pushinteger(L, abort);
return 1;
diff --git a/src/version.c b/src/version.c
index 3cdc86fa7..b459c87b1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 954,
+/**/
953,
/**/
952,