mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 23:24:09 +00:00
Force error if lua_newstate() is used in 64 bit mode.
This commit is contained in:
parent
43f1e13470
commit
055396a69d
@ -18,6 +18,7 @@
|
||||
|
||||
#include "lj_obj.h"
|
||||
#include "lj_err.h"
|
||||
#include "lj_state.h"
|
||||
#include "lj_lib.h"
|
||||
|
||||
/* -- Module registration ------------------------------------------------- */
|
||||
@ -349,8 +350,21 @@ static int panic(lua_State *L)
|
||||
|
||||
LUALIB_API lua_State *luaL_newstate(void)
|
||||
{
|
||||
#if LJ_64
|
||||
lua_State *L = lj_state_newstate(mem_alloc, mem_create());
|
||||
#else
|
||||
lua_State *L = lua_newstate(mem_alloc, mem_create());
|
||||
#endif
|
||||
if (L) G(L)->panic = panic;
|
||||
return L;
|
||||
}
|
||||
|
||||
#if LJ_64
|
||||
LUA_API lua_State *lua_newstate(lua_Alloc f, void *ud)
|
||||
{
|
||||
UNUSED(f); UNUSED(ud);
|
||||
fprintf(stderr, "Must use luaL_newstate() for 64 bit target\n");
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -158,7 +158,11 @@ static void close_state(lua_State *L)
|
||||
}
|
||||
}
|
||||
|
||||
#if LJ_64
|
||||
lua_State *lj_state_newstate(lua_Alloc f, void *ud)
|
||||
#else
|
||||
LUA_API lua_State *lua_newstate(lua_Alloc f, void *ud)
|
||||
#endif
|
||||
{
|
||||
GG_State *GG = cast(GG_State *, f(ud, NULL, 0, sizeof(GG_State)));
|
||||
lua_State *L = &GG->L;
|
||||
|
@ -27,5 +27,8 @@ static LJ_AINLINE void lj_state_checkstack(lua_State *L, MSize need)
|
||||
|
||||
LJ_FUNC lua_State *lj_state_new(lua_State *L);
|
||||
LJ_FUNC void LJ_FASTCALL lj_state_free(global_State *g, lua_State *L);
|
||||
#if LJ_64
|
||||
LJ_FUNC lua_State *lj_state_newstate(lua_Alloc f, void *ud);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user