aboutsummaryrefslogtreecommitdiff
path: root/lapi.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2004-08-30 10:44:44 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2004-08-30 10:44:44 -0300
commit0b062414831e3794fcdb747e53e9662d112473cf (patch)
tree002d75be5a52689a232e44787b2964d8c8e29b9c /lapi.c
parent857253cdfcddf4f49c7cec15791f948d1d7612bb (diff)
downloadlua-0b062414831e3794fcdb747e53e9662d112473cf.tar.gz
lua-0b062414831e3794fcdb747e53e9662d112473cf.tar.bz2
lua-0b062414831e3794fcdb747e53e9662d112473cf.zip
better control for GC cycles
Diffstat (limited to 'lapi.c')
-rw-r--r--lapi.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/lapi.c b/lapi.c
index 83fe3f40..c8cf819b 100644
--- a/lapi.c
+++ b/lapi.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lapi.c,v 2.16 2004/08/12 17:02:51 roberto Exp roberto $ 2** $Id: lapi.c,v 2.17 2004/08/17 17:45:45 roberto Exp roberto $
3** Lua API 3** Lua API
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -831,7 +831,7 @@ LUA_API int lua_gc (lua_State *L, int what, int data) {
831 break; 831 break;
832 } 832 }
833 case LUA_GCRESTART: { 833 case LUA_GCRESTART: {
834 g->GCthreshold = g->nblocks; 834 g->GCthreshold = g->totalbytes;
835 break; 835 break;
836 } 836 }
837 case LUA_GCCOLLECT: { 837 case LUA_GCCOLLECT: {
@@ -840,13 +840,13 @@ LUA_API int lua_gc (lua_State *L, int what, int data) {
840 } 840 }
841 case LUA_GCCOUNT: { 841 case LUA_GCCOUNT: {
842 /* GC values are expressed in Kbytes: #bytes/2^10 */ 842 /* GC values are expressed in Kbytes: #bytes/2^10 */
843 res = cast(int, g->nblocks >> 10); 843 res = cast(int, g->totalbytes >> 10);
844 break; 844 break;
845 } 845 }
846 case LUA_GCSTEP: { 846 case LUA_GCSTEP: {
847 lu_mem a = (cast(lu_mem, data) << 10); 847 lu_mem a = (cast(lu_mem, data) << 10);
848 if (a <= g->nblocks) 848 if (a <= g->totalbytes)
849 g->GCthreshold = g->nblocks - a; 849 g->GCthreshold = g->totalbytes - a;
850 else 850 else
851 g->GCthreshold = 0; 851 g->GCthreshold = 0;
852 luaC_step(L); 852 luaC_step(L);