lua

A copy of the Lua development repository
Log | Files | Refs | README

commit c7dda42c2f5a7aec34c0970164a55d4038daf7ec
parent 26ae992129d5566ee973c0ff78fd709cd5d91271
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Thu, 12 Aug 2004 11:19:29 -0300

bug (due to new handling of varargs)

Diffstat:
Mlvm.c | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/lvm.c b/lvm.c @@ -1,5 +1,5 @@ /* -** $Id: lvm.c,v 2.11 2004/06/29 18:49:02 roberto Exp roberto $ +** $Id: lvm.c,v 2.12 2004/08/10 19:17:23 roberto Exp roberto $ ** Lua virtual machine ** See Copyright Notice in lua.h */ @@ -623,7 +623,8 @@ StkId luaV_execute (lua_State *L, int nexeccalls) { if (L->openupval) luaF_close(L, base); for (aux = 0; pfunc+aux < L->top; aux++) /* move frame down */ setobjs2s(L, func+aux, pfunc+aux); - ci->top = L->top = base+aux; /* correct top */ + ci->top = L->top = func+aux; /* correct top */ + lua_assert(L->top == L->base + clvalue(func)->l.p->maxstacksize); ci->savedpc = L->ci->savedpc; ci->tailcalls++; /* one more call lost */ L->ci--; /* remove new frame */