diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/lj_crecord.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_crecord.c b/src/lj_crecord.c index 2bf0bc1d..c4f138c3 100644 --- a/src/lj_crecord.c +++ b/src/lj_crecord.c | |||
@@ -1084,7 +1084,7 @@ static void crec_snap_caller(jit_State *J) | |||
1084 | const BCIns *pc = J->pc; | 1084 | const BCIns *pc = J->pc; |
1085 | TRef ftr = J->base[-1]; | 1085 | TRef ftr = J->base[-1]; |
1086 | ptrdiff_t delta; | 1086 | ptrdiff_t delta; |
1087 | if (!frame_islua(base-1)) | 1087 | if (!frame_islua(base-1) || J->framedepth <= 0) |
1088 | lj_trace_err(J, LJ_TRERR_NYICALL); | 1088 | lj_trace_err(J, LJ_TRERR_NYICALL); |
1089 | J->pc = frame_pc(base-1); delta = 1+bc_a(J->pc[-1]); | 1089 | J->pc = frame_pc(base-1); delta = 1+bc_a(J->pc[-1]); |
1090 | L->top = base; L->base = base - delta; | 1090 | L->top = base; L->base = base - delta; |