diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib_base.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lib_base.c b/src/lib_base.c index 5190f3fe..7683163c 100644 --- a/src/lib_base.c +++ b/src/lib_base.c | |||
| @@ -141,6 +141,8 @@ LJLIB_CF(getfenv) | |||
| 141 | cTValue *o = L->base; | 141 | cTValue *o = L->base; |
| 142 | if (!(o < L->top && tvisfunc(o))) { | 142 | if (!(o < L->top && tvisfunc(o))) { |
| 143 | int level = lj_lib_optint(L, 1, 1); | 143 | int level = lj_lib_optint(L, 1, 1); |
| 144 | if (level < 0) | ||
| 145 | lj_err_arg(L, 1, LJ_ERR_INVLVL); | ||
| 144 | o = lj_debug_frame(L, level, &level); | 146 | o = lj_debug_frame(L, level, &level); |
| 145 | if (o == NULL) | 147 | if (o == NULL) |
| 146 | lj_err_arg(L, 1, LJ_ERR_INVLVL); | 148 | lj_err_arg(L, 1, LJ_ERR_INVLVL); |
| @@ -162,6 +164,8 @@ LJLIB_CF(setfenv) | |||
| 162 | setgcref(L->env, obj2gco(t)); | 164 | setgcref(L->env, obj2gco(t)); |
| 163 | return 0; | 165 | return 0; |
| 164 | } | 166 | } |
| 167 | if (level < 0) | ||
| 168 | lj_err_arg(L, 1, LJ_ERR_INVLVL); | ||
| 165 | o = lj_debug_frame(L, level, &level); | 169 | o = lj_debug_frame(L, level, &level); |
| 166 | if (o == NULL) | 170 | if (o == NULL) |
| 167 | lj_err_arg(L, 1, LJ_ERR_INVLVL); | 171 | lj_err_arg(L, 1, LJ_ERR_INVLVL); |
