aboutsummaryrefslogtreecommitdiff
path: root/lstate.c
diff options
context:
space:
mode:
Diffstat (limited to 'lstate.c')
-rw-r--r--lstate.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/lstate.c b/lstate.c
index 41a0f997..a2334cca 100644
--- a/lstate.c
+++ b/lstate.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lstate.c,v 1.103 2002/08/07 19:22:39 roberto Exp roberto $ 2** $Id: lstate.c,v 1.104 2002/08/16 20:00:28 roberto Exp roberto $
3** Global State 3** Global State
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -64,10 +64,7 @@ static void f_luaopen (lua_State *L, void *ud) {
64 G(L)->Mbuffer = NULL; 64 G(L)->Mbuffer = NULL;
65 G(L)->Mbuffsize = 0; 65 G(L)->Mbuffsize = 0;
66 G(L)->panic = &default_panic; 66 G(L)->panic = &default_panic;
67 G(L)->rootproto = NULL; 67 G(L)->rootgc = NULL;
68 G(L)->rootcl = NULL;
69 G(L)->roottable = NULL;
70 G(L)->rootupval = NULL;
71 G(L)->rootudata = NULL; 68 G(L)->rootudata = NULL;
72 G(L)->tmudata = NULL; 69 G(L)->tmudata = NULL;
73 setnilvalue(key(G(L)->dummynode)); 70 setnilvalue(key(G(L)->dummynode));
@@ -76,7 +73,7 @@ static void f_luaopen (lua_State *L, void *ud) {
76 G(L)->nblocks = sizeof(lua_State) + sizeof(global_State); 73 G(L)->nblocks = sizeof(lua_State) + sizeof(global_State);
77 stack_init(L, L); /* init stack */ 74 stack_init(L, L); /* init stack */
78 /* create default meta table with a dummy table, and then close the loop */ 75 /* create default meta table with a dummy table, and then close the loop */
79 sethvalue(defaultmeta(L), NULL); 76 defaultmeta(L)->tt = LUA_TTABLE;
80 sethvalue(defaultmeta(L), luaH_new(L, 0, 4)); 77 sethvalue(defaultmeta(L), luaH_new(L, 0, 4));
81 hvalue(defaultmeta(L))->metatable = hvalue(defaultmeta(L)); 78 hvalue(defaultmeta(L))->metatable = hvalue(defaultmeta(L));
82 sethvalue(gt(L), luaH_new(L, 0, 4)); /* table of globals */ 79 sethvalue(gt(L), luaH_new(L, 0, 4)); /* table of globals */
@@ -160,11 +157,8 @@ static void close_state (lua_State *L) {
160 luaF_close(L, L->stack); /* close all upvalues for this thread */ 157 luaF_close(L, L->stack); /* close all upvalues for this thread */
161 if (G(L)) { /* close global state */ 158 if (G(L)) { /* close global state */
162 luaC_sweep(L, 1); /* collect all elements */ 159 luaC_sweep(L, 1); /* collect all elements */
163 lua_assert(G(L)->rootproto == NULL); 160 lua_assert(G(L)->rootgc == NULL);
164 lua_assert(G(L)->rootudata == NULL); 161 lua_assert(G(L)->rootudata == NULL);
165 lua_assert(G(L)->rootcl == NULL);
166 lua_assert(G(L)->rootupval == NULL);
167 lua_assert(G(L)->roottable == NULL);
168 luaS_freeall(L); 162 luaS_freeall(L);
169 luaM_freearray(L, G(L)->Mbuffer, G(L)->Mbuffsize, char); 163 luaM_freearray(L, G(L)->Mbuffer, G(L)->Mbuffsize, char);
170 luaM_freelem(NULL, L->l_G); 164 luaM_freelem(NULL, L->l_G);