lua

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

commit 2e4e888de02d248fc2688dd740de92f8f4f56656
parent ddc144e4d297e5e008f5693a568a1c74ac3e4f54
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Thu, 21 Nov 2002 13:45:58 -0200

Lua functions must have a frame or a saved pc.

Diffstat:
Mlgc.c | 3++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lgc.c b/lgc.c @@ -1,5 +1,5 @@ /* -** $Id: lgc.c,v 1.159 2002/11/18 11:01:55 roberto Exp roberto $ +** $Id: lgc.c,v 1.160 2002/11/21 14:17:15 roberto Exp roberto $ ** Garbage Collector ** See Copyright Notice in lua.h */ @@ -237,6 +237,7 @@ static void traversestack (GCState *st, lua_State *L1) { lim = L1->top; for (ci = L1->base_ci; ci <= L1->ci; ci++) { lua_assert(ci->top <= L1->stack_last); + lua_assert(ci->state & (CI_C | CI_HASFRAME | CI_SAVEDPC)); if (!(ci->state & CI_C) && lim < ci->top) lim = ci->top; }