diff options
Diffstat (limited to 'lparser.c')
-rw-r--r-- | lparser.c | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -489,12 +489,14 @@ static void adjust_assign (LexState *ls, int nvars, int nexps, expdesc *e) { } -/* -** Macros to limit the maximum recursion depth while parsing -*/ -#define enterlevel(ls) luaE_enterCcall((ls)->L) +static void enterlevel (LexState *ls) { + lua_State *L = ls->L; + L->nCcalls++; + checklimit(ls->fs, getCcalls(L), LUAI_MAXCCALLS, "C levels"); +} + -#define leavelevel(ls) luaE_exitCcall((ls)->L) +#define leavelevel(ls) ((ls)->L->nCcalls--) /* |