diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2001-10-17 19:12:57 -0200 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2001-10-17 19:12:57 -0200 |
commit | 1e81da51bab87148981486a84b846399050f4ef2 (patch) | |
tree | d2c94326ca096e032d1ae3fa75a5d0605f494cc6 /lgc.c | |
parent | 7cd37142f404462634a5049a840f572e85c5762b (diff) | |
download | lua-1e81da51bab87148981486a84b846399050f4ef2.tar.gz lua-1e81da51bab87148981486a84b846399050f4ef2.tar.bz2 lua-1e81da51bab87148981486a84b846399050f4ef2.zip |
new API for registry and C upvalues + new implementation for references
Diffstat (limited to 'lgc.c')
-rw-r--r-- | lgc.c | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | ** $Id: lgc.c,v 1.111 2001/09/07 17:39:10 roberto Exp $ | 2 | ** $Id: lgc.c,v 1.112 2001/10/02 16:45:03 roberto Exp $ |
3 | ** Garbage Collector | 3 | ** Garbage Collector |
4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
5 | */ | 5 | */ |
@@ -171,8 +171,7 @@ static void markall (lua_State *L) { | |||
171 | marktagmethods(G(L), &st); /* mark tag methods */ | 171 | marktagmethods(G(L), &st); /* mark tag methods */ |
172 | markstacks(L, &st); /* mark all stacks */ | 172 | markstacks(L, &st); /* mark all stacks */ |
173 | marktable(&st, G(L)->type2tag); | 173 | marktable(&st, G(L)->type2tag); |
174 | marktable(&st, G(L)->registry); | 174 | markobject(&st, &G(L)->registry); |
175 | marktable(&st, G(L)->weakregistry); | ||
176 | while (st.tmark) { /* mark tables */ | 175 | while (st.tmark) { /* mark tables */ |
177 | Hash *h = st.tmark; /* get first table from list */ | 176 | Hash *h = st.tmark; /* get first table from list */ |
178 | st.tmark = h->mark; /* remove it from list */ | 177 | st.tmark = h->mark; /* remove it from list */ |