From b8df2bbc89afc16c7bbe40f06abf5b892676ba3b Mon Sep 17 00:00:00 2001 From: jyelon Date: Thu, 6 Apr 2023 17:26:03 -0400 Subject: [PATCH] eris: add 'lua_isthrowing' support --- luprex/ext/eris-master/src/ldo.c | 3 +++ luprex/ext/eris-master/src/lua.h | 1 + 2 files changed, 4 insertions(+) diff --git a/luprex/ext/eris-master/src/ldo.c b/luprex/ext/eris-master/src/ldo.c index f85a1856..7cd523a4 100644 --- a/luprex/ext/eris-master/src/ldo.c +++ b/luprex/ext/eris-master/src/ldo.c @@ -102,6 +102,9 @@ static void seterrorobj (lua_State *L, int errcode, StkId oldtop) { L->top = oldtop + 1; } +LUA_API int lua_isthrowing (lua_State *L) { + return ((L->errorJmp != NULL) && (L->errorJmp->status != LUA_OK)); +} l_noret luaD_throw (lua_State *L, int errcode) { if (L->errorJmp) { /* thread has an error handler? */ diff --git a/luprex/ext/eris-master/src/lua.h b/luprex/ext/eris-master/src/lua.h index 165d685d..385e9175 100644 --- a/luprex/ext/eris-master/src/lua.h +++ b/luprex/ext/eris-master/src/lua.h @@ -150,6 +150,7 @@ LUA_API void (lua_insert) (lua_State *L, int idx); LUA_API void (lua_replace) (lua_State *L, int idx); LUA_API void (lua_copy) (lua_State *L, int fromidx, int toidx); LUA_API int (lua_checkstack) (lua_State *L, int sz); +LUA_API int (lua_isthrowing) (lua_State *L); LUA_API void (lua_xmove) (lua_State *from, lua_State *to, int n);