From: Jo-Philipp Wich Date: Sun, 19 Jul 2009 16:10:10 +0000 (+0000) Subject: libs/lmo: ensure integer return value in lmo.hash(), fix module open function X-Git-Tag: 0.10.0~1330 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=1738eddc7d259b2e6ddeb793f18b8fba83c961f7;p=oweals%2Fluci.git libs/lmo: ensure integer return value in lmo.hash(), fix module open function --- diff --git a/libs/lmo/src/lmo_lualib.c b/libs/lmo/src/lmo_lualib.c index 8d869aa49..30e91b380 100644 --- a/libs/lmo/src/lmo_lualib.c +++ b/libs/lmo/src/lmo_lualib.c @@ -49,7 +49,7 @@ static int lmo_L_open(lua_State *L) { static int lmo_L_hash(lua_State *L) { const char *data = luaL_checkstring(L, 1); uint32_t hash = sfh_hash(data, strlen(data)); - lua_pushnumber(L, hash); + lua_pushinteger(L, (lua_Integer)hash); return 1; } @@ -140,17 +140,13 @@ static const luaL_reg R[] = { }; LUALIB_API int luaopen_lmo(lua_State *L) { - luaL_newmetatable(L, LMO_LUALIB_META); - luaL_register(L, NULL, R); - lua_pushvalue(L, -1); - lua_setfield(L, -2, "__index"); - lua_setglobal(L, LMO_LUALIB_META); - luaL_newmetatable(L, LMO_ARCHIVE_META); luaL_register(L, NULL, M); lua_pushvalue(L, -1); lua_setfield(L, -2, "__index"); lua_setglobal(L, LMO_ARCHIVE_META); + luaL_register(L, LMO_LUALIB_META, R); + return 1; }