diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2002-11-13 09:32:26 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2002-11-13 09:32:26 -0200 |
| commit | 2f91f95d94d3a27fee6b45c31ea9ab631924a8bf (patch) | |
| tree | bbc605f6643b4958f45536dc5f5f84297eda70c2 /lstate.c | |
| parent | 42dd080a2e3e8fb6887ca1e066f53bb8fd23c9e7 (diff) | |
| download | lua-2f91f95d94d3a27fee6b45c31ea9ab631924a8bf.tar.gz lua-2f91f95d94d3a27fee6b45c31ea9ab631924a8bf.tar.bz2 lua-2f91f95d94d3a27fee6b45c31ea9ab631924a8bf.zip | |
better control over GCObjects
Diffstat (limited to 'lstate.c')
| -rw-r--r-- | lstate.c | 5 |
1 files changed, 3 insertions, 2 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lstate.c,v 1.108 2002/10/25 20:05:28 roberto Exp roberto $ | 2 | ** $Id: lstate.c,v 1.109 2002/10/25 21:30:00 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 | */ |
| @@ -125,7 +125,7 @@ static void preinit_state (lua_State *L) { | |||
| 125 | 125 | ||
| 126 | lua_State *luaE_newthread (lua_State *L) { | 126 | lua_State *luaE_newthread (lua_State *L) { |
| 127 | lua_State *L1 = newthread(L); | 127 | lua_State *L1 = newthread(L); |
| 128 | luaC_link(L, cast(GCObject *, L1), LUA_TTHREAD); | 128 | luaC_link(L, valtogco(L1), LUA_TTHREAD); |
| 129 | preinit_state(L1); | 129 | preinit_state(L1); |
| 130 | L1->l_G = L->l_G; | 130 | L1->l_G = L->l_G; |
| 131 | stack_init(L1, L); /* init stack */ | 131 | stack_init(L1, L); /* init stack */ |
| @@ -137,6 +137,7 @@ lua_State *luaE_newthread (lua_State *L) { | |||
| 137 | LUA_API lua_State *lua_open (void) { | 137 | LUA_API lua_State *lua_open (void) { |
| 138 | lua_State *L = newthread(NULL); | 138 | lua_State *L = newthread(NULL); |
| 139 | if (L) { /* allocation OK? */ | 139 | if (L) { /* allocation OK? */ |
| 140 | L->tt = LUA_TTHREAD; | ||
| 140 | preinit_state(L); | 141 | preinit_state(L); |
| 141 | L->l_G = NULL; | 142 | L->l_G = NULL; |
| 142 | if (luaD_rawrunprotected(L, f_luaopen, NULL) != 0) { | 143 | if (luaD_rawrunprotected(L, f_luaopen, NULL) != 0) { |
