diff -r 6effa1929af7 -r d775d7289fe4 lm.c --- a/lm.c Sun Apr 05 16:55:48 2009 +0300 +++ b/lm.c Mon Apr 27 13:15:23 2009 +0300 @@ -22,34 +22,26 @@ int luaopen_loudmouth (lua_State *L) { lua_pushliteral (L, LLM_OBJREGISTRY); // 1 registry key - lua_newtable (L); // 2 registry value (table) - lua_createtable (L, 0, 1); // 3 metatable - lua_pushliteral (L, "__mode"); // 4 metatable key - lua_pushliteral (L, "v"); // 5 metatable value - lua_settable (L, -3); // 3 metatable - lua_setmetatable (L, -2); // 2 registry value - lua_rawset (L, LUA_REGISTRYINDEX); // 0 + lua_newtable (L); // 2 registry value (table) + lua_createtable (L, 0, 1); // 3 metatable + lua_pushliteral (L, "v"); // 4 metatable value + lua_setfield (L, -2, "__mode"); // 3 metatable + lua_setmetatable (L, -2); // 2 registry value + lua_rawset (L, LUA_REGISTRYINDEX); // 0 lua_createtable (L, 6, 0); - - lua_pushliteral (L, "message_node"); luaopen_lm_message_node (L); - lua_settable (L, -3); - lua_pushliteral (L, "message"); + lua_setfield (L, -2, "message_node"); luaopen_lm_message (L); - lua_settable (L, -3); - lua_pushliteral (L, "message_handler"); + lua_setfield (L, -2, "message"); luaopen_lm_message_handler (L); - lua_settable (L, -3); - lua_pushliteral (L, "proxy"); + lua_setfield (L, -2, "message_handler"); luaopen_lm_proxy (L); - lua_settable (L, -3); - lua_pushliteral (L, "ssl"); + lua_setfield (L, -2, "proxy"); luaopen_lm_ssl (L); - lua_settable (L, -3); - lua_pushliteral (L, "connection"); + lua_setfield (L, -2, "ssl"); luaopen_lm_connection (L); - lua_settable (L, -3); + lua_setfield (L, -2, "connection"); return 1; }