diff options
Diffstat (limited to 'lfunc.c')
-rw-r--r-- | lfunc.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -223,9 +223,9 @@ static void poptbclist (lua_State *L) { | |||
223 | 223 | ||
224 | /* | 224 | /* |
225 | ** Close all upvalues and to-be-closed variables up to the given stack | 225 | ** Close all upvalues and to-be-closed variables up to the given stack |
226 | ** level. | 226 | ** level. Return restored 'level'. |
227 | */ | 227 | */ |
228 | void luaF_close (lua_State *L, StkId level, int status, int yy) { | 228 | StkId luaF_close (lua_State *L, StkId level, int status, int yy) { |
229 | ptrdiff_t levelrel = savestack(L, level); | 229 | ptrdiff_t levelrel = savestack(L, level); |
230 | luaF_closeupval(L, level); /* first, close the upvalues */ | 230 | luaF_closeupval(L, level); /* first, close the upvalues */ |
231 | while (L->tbclist >= level) { /* traverse tbc's down to that level */ | 231 | while (L->tbclist >= level) { /* traverse tbc's down to that level */ |
@@ -234,6 +234,7 @@ void luaF_close (lua_State *L, StkId level, int status, int yy) { | |||
234 | prepcallclosemth(L, tbc, status, yy); /* close variable */ | 234 | prepcallclosemth(L, tbc, status, yy); /* close variable */ |
235 | level = restorestack(L, levelrel); | 235 | level = restorestack(L, levelrel); |
236 | } | 236 | } |
237 | return level; | ||
237 | } | 238 | } |
238 | 239 | ||
239 | 240 | ||