From 4a146cac9a00f5a1a7877db847ff5ba03e7b7256 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Wed, 20 May 2015 16:43:41 +0200 Subject: [PATCH] LJ_GC64: Fix frame unwinding. --- src/lj_err.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lj_err.c b/src/lj_err.c index 4f134941..26210f54 100644 --- a/src/lj_err.c +++ b/src/lj_err.c @@ -119,7 +119,7 @@ static void *err_unwind(lua_State *L, void *stopcf, int errcode) if (errcode) { L->base = frame_prevd(frame) + 1; L->cframe = cframe_prev(cf); - unwindstack(L, frame); + unwindstack(L, frame - LJ_FR2); } else if (cf != stopcf) { cf = cframe_prev(cf); frame = frame_prevd(frame); @@ -144,7 +144,7 @@ static void *err_unwind(lua_State *L, void *stopcf, int errcode) if (errcode) { L->base = frame_prevd(frame) + 1; L->cframe = cframe_prev(cf); - unwindstack(L, frame); + unwindstack(L, frame - LJ_FR2); } return cf; case FRAME_CONT: /* Continuation frame. */