diff options
Diffstat (limited to 'ldo.c')
| -rw-r--r-- | ldo.c | 11 |
1 files changed, 11 insertions, 0 deletions
| @@ -221,6 +221,17 @@ l_noret luaD_errerr (lua_State *L) { | |||
| 221 | 221 | ||
| 222 | 222 | ||
| 223 | /* | 223 | /* |
| 224 | ** Check whether stack has enough space to run a simple function (such | ||
| 225 | ** as a finalizer): At least BASIC_STACK_SIZE in the Lua stack and | ||
| 226 | ** 2 slots in the C stack. | ||
| 227 | */ | ||
| 228 | int luaD_checkminstack (lua_State *L) { | ||
| 229 | return ((stacksize(L) < MAXSTACK - BASIC_STACK_SIZE) && | ||
| 230 | (getCcalls(L) < LUAI_MAXCCALLS - 2)); | ||
| 231 | } | ||
| 232 | |||
| 233 | |||
| 234 | /* | ||
| 224 | ** In ISO C, any pointer use after the pointer has been deallocated is | 235 | ** In ISO C, any pointer use after the pointer has been deallocated is |
| 225 | ** undefined behavior. So, before a stack reallocation, all pointers | 236 | ** undefined behavior. So, before a stack reallocation, all pointers |
| 226 | ** should be changed to offsets, and after the reallocation they should | 237 | ** should be changed to offsets, and after the reallocation they should |
