diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lj_cparse.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lj_cparse.c b/src/lj_cparse.c index 6c3bb2f9..9774f3a5 100644 --- a/src/lj_cparse.c +++ b/src/lj_cparse.c | |||
| @@ -1766,9 +1766,11 @@ static void cp_pragma(CPState *cp, BCLine pragmaline) | |||
| 1766 | cp_check(cp, '('); | 1766 | cp_check(cp, '('); |
| 1767 | if (cp->tok == CTOK_IDENT) { | 1767 | if (cp->tok == CTOK_IDENT) { |
| 1768 | if (cp_str_is(cp->str, "push")) { | 1768 | if (cp_str_is(cp->str, "push")) { |
| 1769 | if (cp->curpack < CPARSE_MAX_PACKSTACK) { | 1769 | if (cp->curpack < CPARSE_MAX_PACKSTACK-1) { |
| 1770 | cp->packstack[cp->curpack+1] = cp->packstack[cp->curpack]; | 1770 | cp->packstack[cp->curpack+1] = cp->packstack[cp->curpack]; |
| 1771 | cp->curpack++; | 1771 | cp->curpack++; |
| 1772 | } else { | ||
| 1773 | cp_errmsg(cp, cp->tok, LJ_ERR_XLEVELS); | ||
| 1772 | } | 1774 | } |
| 1773 | } else if (cp_str_is(cp->str, "pop")) { | 1775 | } else if (cp_str_is(cp->str, "pop")) { |
| 1774 | if (cp->curpack > 0) cp->curpack--; | 1776 | if (cp->curpack > 0) cp->curpack--; |
