From 0969a971cd41921bd5ee72c1da880455bcca3bb4 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Mon, 9 Mar 1998 18:49:52 -0300 Subject: better use of "ASSERT". --- lgc.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'lgc.c') diff --git a/lgc.c b/lgc.c index 14b6bceb..b5417f77 100644 --- a/lgc.c +++ b/lgc.c @@ -1,5 +1,5 @@ /* -** $Id: lgc.c,v 1.16 1998/01/19 19:49:22 roberto Exp roberto $ +** $Id: lgc.c,v 1.17 1998/03/06 16:54:42 roberto Exp roberto $ ** Garbage Collector ** See Copyright Notice in lua.h */ @@ -96,7 +96,7 @@ static int ismarked (TObject *o) #ifdef DEBUG case LUA_T_LINE: case LUA_T_CLMARK: case LUA_T_CMARK: case LUA_T_PMARK: - lua_error("internal error"); + LUA_INTERNALERROR("invalid type"); #endif default: /* nil, number or cproto */ return 1; @@ -212,11 +212,13 @@ static void hashmark (Hash *h) static void globalmark (void) { TaggedString *g; - for (g=(TaggedString *)L->rootglobal.next; g; g=(TaggedString *)g->head.next) + for (g=(TaggedString *)L->rootglobal.next; g; g=(TaggedString *)g->head.next){ + LUA_ASSERT(g->constindex >= 0, "userdata in global list"); if (g->u.s.globalval.ttype != LUA_T_NIL) { markobject(&g->u.s.globalval); strmark(g); /* cannot collect non nil global variables */ } + } } -- cgit v1.2.3-55-g6feb