diff options
-rw-r--r-- | epan/wslua/init_wslua.c | 3 | ||||
-rwxr-xr-x | epan/wslua/make-reg.pl | 11 | ||||
-rw-r--r-- | epan/wslua/wslua_dumper.c | 2 | ||||
-rw-r--r-- | epan/wslua/wslua_field.c | 4 | ||||
-rw-r--r-- | epan/wslua/wslua_gui.c | 4 | ||||
-rw-r--r-- | epan/wslua/wslua_listener.c | 2 | ||||
-rw-r--r-- | epan/wslua/wslua_pinfo.c | 12 | ||||
-rw-r--r-- | epan/wslua/wslua_proto.c | 14 | ||||
-rw-r--r-- | epan/wslua/wslua_tree.c | 2 | ||||
-rw-r--r-- | epan/wslua/wslua_tvb.c | 10 | ||||
-rw-r--r-- | epan/wslua/wslua_util.c | 2 |
11 files changed, 38 insertions, 28 deletions
diff --git a/epan/wslua/init_wslua.c b/epan/wslua/init_wslua.c index 40fa7d01c8..5bcc660ccd 100644 --- a/epan/wslua/init_wslua.c +++ b/epan/wslua/init_wslua.c @@ -263,6 +263,7 @@ static gboolean lua_load_script(const gchar* filename) { case 0: lua_pcall(L,0,0,1); fclose(file); + lua_pop(L,1); /* pop the error handler */ return TRUE; case LUA_ERRSYNTAX: { report_failure("Lua: syntax error during precompilation of `%s':\n%s",filename,lua_tostring(L,-1)); @@ -470,6 +471,7 @@ int wslua_init(register_cb cb, gpointer client_data) { L = NULL; return 0; } + lua_pop(L,1); /* pop the getglobal result */ /* load global scripts */ lua_load_plugins(get_plugin_dir(), cb, client_data, FALSE); @@ -480,6 +482,7 @@ int wslua_init(register_cb cb, gpointer client_data) { if (lua_isboolean(L,-1) && lua_toboolean(L,-1)) { run_anyway = TRUE; } + lua_pop(L,1); /* pop the getglobal result */ /* if we are indeed superuser run user scripts only if told to do so */ if ( (!started_with_special_privs()) || run_anyway ) { diff --git a/epan/wslua/make-reg.pl b/epan/wslua/make-reg.pl index ba8b958a76..3c8b4afa60 100755 --- a/epan/wslua/make-reg.pl +++ b/epan/wslua/make-reg.pl @@ -61,16 +61,21 @@ print C '#include "config.h"' . "\n"; print C '#include "wslua.h"' . "\n\n"; print C '#include "lua_bitop.h"' . "\n\n"; -print C "static void wslua_reg_module(lua_State* L, const char *name, lua_CFunction func) { \n"; +print C "static void wslua_reg_module(lua_State* L, const char *name _U_, lua_CFunction func) { \n"; print C "\tlua_pushcfunction(L, func);\n"; -print C "\tlua_pushstring(L, name);\n"; -print C "\tlua_call(L, 1, 0);\n"; +# why was this done? this string was never used for anything - I'll keep the argument "name" above +# just in case this needs to be reverted someday, but I think this thing's from old code or something +# print C "\tlua_pushstring(L, name);\n"; +# print C "\tlua_call(L, 1, 0);\n"; +print C "\tlua_call(L, 0, 0);\n"; print C "}\n\n"; print C "void wslua_register_classes(lua_State* L) { \n"; for (@classes) { print C "\twslua_reg_module(L, \"${_}\", ${_}_register);\n"; } print C "\twslua_reg_module(L, \"bit\", luaopen_bit);\n"; +# the bitops library returns a value on the stack - get rid of it +print C "\tlua_pop(L,1);\n"; print C "}\n\n"; diff --git a/epan/wslua/wslua_dumper.c b/epan/wslua/wslua_dumper.c index bdd29b9398..b60c17701c 100644 --- a/epan/wslua/wslua_dumper.c +++ b/epan/wslua/wslua_dumper.c @@ -462,6 +462,6 @@ WSLUA_META Dumper_meta[] = { int Dumper_register(lua_State* L) { dumper_encaps = g_hash_table_new(g_direct_hash,g_direct_equal); WSLUA_REGISTER_CLASS(Dumper); - return 1; + return 0; } diff --git a/epan/wslua/wslua_field.c b/epan/wslua/wslua_field.c index bc8dc1452f..5b1393ea0c 100644 --- a/epan/wslua/wslua_field.c +++ b/epan/wslua/wslua_field.c @@ -440,7 +440,7 @@ static const luaL_Reg FieldInfo_meta[] = { int FieldInfo_register(lua_State* L) { WSLUA_REGISTER_META(FieldInfo); - return 1; + return 0; } @@ -655,7 +655,7 @@ int Field_register(lua_State* L) { WSLUA_REGISTER_CLASS(Field); outstanding_FieldInfo = g_ptr_array_new(); - return 1; + return 0; } /* diff --git a/epan/wslua/wslua_gui.c b/epan/wslua/wslua_gui.c index bfb1838275..2d7ed2b286 100644 --- a/epan/wslua/wslua_gui.c +++ b/epan/wslua/wslua_gui.c @@ -412,7 +412,7 @@ int ProgDlg_register(lua_State* L) { WSLUA_REGISTER_CLASS(ProgDlg); - return 1; + return 0; } @@ -726,7 +726,7 @@ int TextWindow_register(lua_State* L) { WSLUA_REGISTER_CLASS(TextWindow); - return 1; + return 0; } diff --git a/epan/wslua/wslua_listener.c b/epan/wslua/wslua_listener.c index 1406da39d4..33f4ddc595 100644 --- a/epan/wslua/wslua_listener.c +++ b/epan/wslua/wslua_listener.c @@ -318,6 +318,6 @@ static const luaL_Reg Listener_meta[] = { int Listener_register(lua_State* L) { wslua_set_tap_enums(L); WSLUA_REGISTER_CLASS(Listener); - return 1; + return 0; } diff --git a/epan/wslua/wslua_pinfo.c b/epan/wslua/wslua_pinfo.c index 721c8651fe..3182c19675 100644 --- a/epan/wslua/wslua_pinfo.c +++ b/epan/wslua/wslua_pinfo.c @@ -304,7 +304,7 @@ int NSTime_register(lua_State* L) { lua_pushcfunction(L, NSTime_new); lua_setglobal(L, "NSTime"); - return 1; + return 0; } WSLUA_CLASS_DEFINE(Address,NOP,NOP); /* Represents an address */ @@ -525,7 +525,7 @@ WSLUA_META Address_meta[] = { int Address_register(lua_State *L) { WSLUA_REGISTER_CLASS(Address); - return 1; + return 0; } @@ -740,7 +740,7 @@ WSLUA_META Column_meta[] = { int Column_register(lua_State *L) { WSLUA_REGISTER_CLASS(Column); - return 1; + return 0; } @@ -853,7 +853,7 @@ static const luaL_Reg Columns_meta[] = { int Columns_register(lua_State *L) { WSLUA_REGISTER_META(Columns); - return 1; + return 0; } WSLUA_CLASS_DEFINE(PrivateTable,NOP,NOP); @@ -969,7 +969,7 @@ WSLUA_META PrivateTable_meta[] = { int PrivateTable_register(lua_State* L) { WSLUA_REGISTER_META(PrivateTable); - return 1; + return 0; } @@ -1481,5 +1481,5 @@ int Pinfo_register(lua_State* L) { outstanding_Column = g_ptr_array_new(); outstanding_Columns = g_ptr_array_new(); outstanding_PrivateTable = g_ptr_array_new(); - return 1; + return 0; } diff --git a/epan/wslua/wslua_proto.c b/epan/wslua/wslua_proto.c index 50df680b1d..98d2262a53 100644 --- a/epan/wslua/wslua_proto.c +++ b/epan/wslua/wslua_proto.c @@ -263,7 +263,7 @@ WSLUA_META Pref_meta[] = { WSLUA_REGISTER Pref_register(lua_State* L) { WSLUA_REGISTER_CLASS(Pref); - return 1; + return 0; } WSLUA_CLASS_DEFINE(Prefs,NOP,NOP); /* The table of preferences of a protocol */ @@ -427,7 +427,7 @@ WSLUA_META Prefs_meta[] = { WSLUA_REGISTER Prefs_register(lua_State* L) { WSLUA_REGISTER_META(Prefs); - return 1; + return 0; } WSLUA_CLASS_DEFINE(ProtoField,FAIL_ON_NULL("null ProtoField"),NOP); @@ -1332,7 +1332,7 @@ static const luaL_Reg ProtoField_meta[] = { int ProtoField_register(lua_State* L) { WSLUA_REGISTER_CLASS(ProtoField); - return 1; + return 0; } WSLUA_CLASS_DEFINE(Proto,NOP,NOP); @@ -1665,7 +1665,7 @@ int Proto_register(lua_State* L) { lua_pushcfunction(L, Proto_new); lua_setglobal(L, "Proto"); - return 1; + return 0; } /** @@ -1732,6 +1732,8 @@ int Proto_commit(lua_State* L) { g_array_free(etta,FALSE); } + lua_pop(L,1); /* pop the protocols_table_ref */ + return 0; } @@ -1810,7 +1812,7 @@ static const luaL_Reg Dissector_meta[] = { int Dissector_register(lua_State* L) { WSLUA_REGISTER_CLASS(Dissector); - return 1; + return 0; } WSLUA_CLASS_DEFINE(DissectorTable,NOP,NOP); @@ -2214,5 +2216,5 @@ static const luaL_Reg DissectorTable_meta[] = { int DissectorTable_register(lua_State* L) { WSLUA_REGISTER_CLASS(DissectorTable); - return 1; + return 0; } diff --git a/epan/wslua/wslua_tree.c b/epan/wslua/wslua_tree.c index 5987c3b5c7..de1ef14790 100644 --- a/epan/wslua/wslua_tree.c +++ b/epan/wslua/wslua_tree.c @@ -444,5 +444,5 @@ int TreeItem_register(lua_State *L) { WSLUA_REGISTER_CLASS(TreeItem); outstanding_TreeItem = g_ptr_array_new(); proto_register_subtree_array(etts,1); - return 1; + return 0; } diff --git a/epan/wslua/wslua_tvb.c b/epan/wslua/wslua_tvb.c index d724fb8868..8ef7108b27 100644 --- a/epan/wslua/wslua_tvb.c +++ b/epan/wslua/wslua_tvb.c @@ -335,7 +335,7 @@ static const luaL_Reg ByteArray_meta[] = { int ByteArray_register(lua_State* L) { WSLUA_REGISTER_CLASS(ByteArray); - return 1; + return 0; } @@ -666,7 +666,7 @@ static const luaL_Reg Tvb_meta[] = { int Tvb_register(lua_State* L) { WSLUA_REGISTER_CLASS(Tvb); - return 1; + return 0; } @@ -1501,7 +1501,7 @@ int TvbRange_register(lua_State* L) { outstanding_Tvb = g_ptr_array_new(); outstanding_TvbRange = g_ptr_array_new(); WSLUA_REGISTER_CLASS(TvbRange); - return 1; + return 0; } WSLUA_CLASS_DEFINE(Int64,FAIL_ON_NULL("null int64"),NOP); @@ -1543,7 +1543,7 @@ static const luaL_Reg Int64_meta[] = { int Int64_register(lua_State* L) { WSLUA_REGISTER_CLASS(Int64); - return 1; + return 0; } WSLUA_CLASS_DEFINE(UInt64,FAIL_ON_NULL("null uint64"),NOP); @@ -1579,6 +1579,6 @@ static const luaL_Reg UInt64_meta[] = { int UInt64_register(lua_State* L) { WSLUA_REGISTER_CLASS(UInt64); - return 1; + return 0; } diff --git a/epan/wslua/wslua_util.c b/epan/wslua/wslua_util.c index 47bf963fb7..cc89e99198 100644 --- a/epan/wslua/wslua_util.c +++ b/epan/wslua/wslua_util.c @@ -418,7 +418,7 @@ int Dir_register(lua_State* L) { WSLUA_REGISTER_CLASS(Dir); - return 1; + return 0; } |