diff options
| author | Li Jin <dragon-fly@qq.com> | 2021-01-05 16:48:53 +0800 |
|---|---|---|
| committer | Li Jin <dragon-fly@qq.com> | 2021-01-05 16:48:53 +0800 |
| commit | 71b9532659abb531bd1597d88451426dcc895824 (patch) | |
| tree | c9b50856b37f759c9a31e1a6e761e77b51996fa6 /src/lua/lstate.c | |
| parent | e3a31f9945053d8e8d9e4ef3d2e4c9abe563cff2 (diff) | |
| download | yuescript-71b9532659abb531bd1597d88451426dcc895824.tar.gz yuescript-71b9532659abb531bd1597d88451426dcc895824.tar.bz2 yuescript-71b9532659abb531bd1597d88451426dcc895824.zip | |
update Lua.
Diffstat (limited to 'src/lua/lstate.c')
| -rw-r--r-- | src/lua/lstate.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/lua/lstate.c b/src/lua/lstate.c index 4227429..1596b51 100644 --- a/src/lua/lstate.c +++ b/src/lua/lstate.c | |||
| @@ -181,7 +181,7 @@ static void stack_init (lua_State *L1, lua_State *L) { | |||
| 181 | int i; CallInfo *ci; | 181 | int i; CallInfo *ci; |
| 182 | /* initialize stack array */ | 182 | /* initialize stack array */ |
| 183 | L1->stack = luaM_newvector(L, BASIC_STACK_SIZE + EXTRA_STACK, StackValue); | 183 | L1->stack = luaM_newvector(L, BASIC_STACK_SIZE + EXTRA_STACK, StackValue); |
| 184 | for (i = 0; i < BASIC_STACK_SIZE; i++) | 184 | for (i = 0; i < BASIC_STACK_SIZE + EXTRA_STACK; i++) |
| 185 | setnilvalue(s2v(L1->stack + i)); /* erase new stack */ | 185 | setnilvalue(s2v(L1->stack + i)); /* erase new stack */ |
| 186 | L1->top = L1->stack; | 186 | L1->top = L1->stack; |
| 187 | L1->stack_last = L1->stack + BASIC_STACK_SIZE; | 187 | L1->stack_last = L1->stack + BASIC_STACK_SIZE; |
| @@ -213,17 +213,14 @@ static void freestack (lua_State *L) { | |||
| 213 | ** Create registry table and its predefined values | 213 | ** Create registry table and its predefined values |
| 214 | */ | 214 | */ |
| 215 | static void init_registry (lua_State *L, global_State *g) { | 215 | static void init_registry (lua_State *L, global_State *g) { |
| 216 | TValue temp; | ||
| 217 | /* create registry */ | 216 | /* create registry */ |
| 218 | Table *registry = luaH_new(L); | 217 | Table *registry = luaH_new(L); |
| 219 | sethvalue(L, &g->l_registry, registry); | 218 | sethvalue(L, &g->l_registry, registry); |
| 220 | luaH_resize(L, registry, LUA_RIDX_LAST, 0); | 219 | luaH_resize(L, registry, LUA_RIDX_LAST, 0); |
| 221 | /* registry[LUA_RIDX_MAINTHREAD] = L */ | 220 | /* registry[LUA_RIDX_MAINTHREAD] = L */ |
| 222 | setthvalue(L, &temp, L); /* temp = L */ | 221 | setthvalue(L, ®istry->array[LUA_RIDX_MAINTHREAD - 1], L); |
| 223 | luaH_setint(L, registry, LUA_RIDX_MAINTHREAD, &temp); | 222 | /* registry[LUA_RIDX_GLOBALS] = new table (table of globals) */ |
| 224 | /* registry[LUA_RIDX_GLOBALS] = table of globals */ | 223 | sethvalue(L, ®istry->array[LUA_RIDX_GLOBALS - 1], luaH_new(L)); |
| 225 | sethvalue(L, &temp, luaH_new(L)); /* temp = new table (global table) */ | ||
| 226 | luaH_setint(L, registry, LUA_RIDX_GLOBALS, &temp); | ||
| 227 | } | 224 | } |
| 228 | 225 | ||
| 229 | 226 | ||
