From 3e267a6ece99b0affa1e0d5c15fb21c1b60dd63d Mon Sep 17 00:00:00 2001 From: Kahrl Date: Sat, 23 Aug 2014 14:30:51 +0200 Subject: [PATCH] Fix LuaJIT exception wrapper --- src/script/common/c_internal.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/script/common/c_internal.cpp b/src/script/common/c_internal.cpp index 4c098f8d5..f811dd5d3 100644 --- a/src/script/common/c_internal.cpp +++ b/src/script/common/c_internal.cpp @@ -64,8 +64,10 @@ int script_exception_wrapper(lua_State *L, lua_CFunction f) return f(L); // Call wrapped function and return result. } catch (const char *s) { // Catch and convert exceptions. lua_pushstring(L, s); - } catch (LuaError& e) { + } catch (std::exception& e) { lua_pushstring(L, e.what()); + } catch (...) { + lua_pushliteral(L, "caught (...)"); } return lua_error(L); // Rethrow as a Lua error. }