at master 648 B view raw
1From: Enrico Tassi <gareuselesinge@debian.org> 2Date: Tue, 26 Aug 2014 16:20:55 +0200 3Subject: Fix stack overflow in vararg functions 4 5--- 6 src/ldo.c | 2 +- 7 1 file changed, 1 insertion(+), 1 deletion(-) 8 9diff --git a/src/ldo.c b/src/ldo.c 10index d1bf786..30333bf 100644 11--- a/src/ldo.c 12+++ b/src/ldo.c 13@@ -274,7 +274,7 @@ int luaD_precall (lua_State *L, StkId func, int nresults) { 14 CallInfo *ci; 15 StkId st, base; 16 Proto *p = cl->p; 17- luaD_checkstack(L, p->maxstacksize); 18+ luaD_checkstack(L, p->maxstacksize + p->numparams); 19 func = restorestack(L, funcr); 20 if (!p->is_vararg) { /* no varargs? */ 21 base = func + 1;