aboutsummaryrefslogtreecommitdiff
path: root/lgc.c
diff options
context:
space:
mode:
Diffstat (limited to 'lgc.c')
-rw-r--r--lgc.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/lgc.c b/lgc.c
index 3bc0740b..5823cb6b 100644
--- a/lgc.c
+++ b/lgc.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lgc.c,v 2.203 2015/03/04 13:31:21 roberto Exp roberto $ 2** $Id: lgc.c,v 2.204 2015/03/04 13:51:55 roberto Exp roberto $
3** Garbage Collector 3** Garbage Collector
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -977,19 +977,6 @@ void luaC_freeallobjects (lua_State *L) {
977} 977}
978 978
979 979
980/*
981** Clear API string cache. (Entries cannot be empty, so fill them with
982** a non-collectable string.)
983*/
984static void clearapihash (global_State *g) {
985 int i;
986 for (i = 0; i < STRCACHE_SIZE; i++) {
987 if (iswhite(g->strcache[i])) /* will entry be collected? */
988 g->strcache[i] = g->memerrmsg; /* replace it with something fixed */
989 }
990}
991
992
993static l_mem atomic (lua_State *L) { 980static l_mem atomic (lua_State *L) {
994 global_State *g = G(L); 981 global_State *g = G(L);
995 l_mem work; 982 l_mem work;
@@ -1030,7 +1017,7 @@ static l_mem atomic (lua_State *L) {
1030 /* clear values from resurrected weak tables */ 1017 /* clear values from resurrected weak tables */
1031 clearvalues(g, g->weak, origweak); 1018 clearvalues(g, g->weak, origweak);
1032 clearvalues(g, g->allweak, origall); 1019 clearvalues(g, g->allweak, origall);
1033 clearapihash(g); 1020 luaS_clearcache(g);
1034 g->currentwhite = cast_byte(otherwhite(g)); /* flip current white */ 1021 g->currentwhite = cast_byte(otherwhite(g)); /* flip current white */
1035 work += g->GCmemtrav; /* complete counting */ 1022 work += g->GCmemtrav; /* complete counting */
1036 return work; /* estimate of memory marked by 'atomic' */ 1023 return work; /* estimate of memory marked by 'atomic' */