Lua: remove various logging functions (debug, warn, etc.)
authorPeter Wu <peter@lekensteyn.nl>
Thu, 6 Sep 2018 14:24:24 +0000 (16:24 +0200)
committerAnders Broman <a.broman58@gmail.com>
Fri, 7 Sep 2018 04:02:45 +0000 (04:02 +0000)
The "debug" logging function overwrites the "debug" package which breaks
luacov: https://github.com/keplerproject/luacov/issues/55

Change-Id: I9b6025c060733198bfff8ea959444c09d6e08709
Reviewed-on: https://code.wireshark.org/review/29449
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
docbook/release-notes.asciidoc
epan/wslua/console.lua
epan/wslua/template-init.lua
epan/wslua/wslua.h
epan/wslua/wslua_util.c
test/lua/globals_2.2.txt

index f8aae43a2db8ced09c8af6fe1f5f4fdd34fa93cf..0fbc11cf92c140d89882b5b3538198b460290b85 100644 (file)
@@ -109,7 +109,9 @@ A new extcap has been added: dpauxmon. It allows capturing DisplayPort AUX chann
 data from linux kernel drivers.
 --
 
-//=== Major API Changes
+=== Major API Changes
+* Lua: the various logging functions (debug, info, message, warn and critical)
+  have been removed. Use the print function instead for debugging purposes.
 
 == Getting Wireshark
 
index 023016e51cdb04cffcbe63498b88898092f726ab..2af50d35875d7139b50e9e5d2a0c3808670fdced 100644 (file)
@@ -57,34 +57,29 @@ if (gui_enabled()) then
                local w = TextWindow.new("Console")
 
                -- save original logger functions
-               local orig = {
-                       critical = critical,
-                       warn = warn,
-                       message = message,
-                       info = info,
-                       debug = debug
-               }
+               local orig_print = print
 
                -- define new logger functions that append text to the window
-               function critical(x)  w:append( date() .. " CRITICAL: " .. tostring(x) .. "\n") end
-               function warn(x)  w:append( date() .. " WARN: " .. tostring(x) .. "\n") end
-               function message(x)  w:append( date() .. " MESSAGE: " .. tostring(x) .. "\n") end
-               function info(x)  w:append( date() .. " INFO: " .. tostring(x) .. "\n") end
-               function debug(x)  w:append( date() .. " DEBUG: " .. tostring(x) .. "\n") end
+               function print(...)
+                       local arg = {...}
+                       local n = #arg
+                       w:append(date() .. " ")
+                       for i=1, n do
+                               if i > 1 then w:append("\t") end
+                               w:append(tostring(arg[i]))
+                       end
+                       w:append("\n")
+               end
 
                -- when the window gets closed restore the original logger functions
                local function at_close()
-                       critical = orig.critical
-                       warn = orig.warn
-                       message = orig.message
-                       info = orig.info
-                       debug = orig.debug
+                       print = old_print
 
                        console_open = false
                end
 
                w:set_atclose(at_close)
-               info("Console opened")
+               print("Console opened")
        end
 
        function ref_manual()
index 9be7050fede36ef0fa2a0b651c0a1e1ff03bfe50..a06f62265e34b09709c8ba4099795e8f2444cbd9 100644 (file)
@@ -38,13 +38,6 @@ if running_superuser then
     file = disabled_lib
 end
 
--- to avoid output to stdout which can cause problems lua's print ()
--- has been suppresed so that it yields an error.
--- have print() call info() instead.
-if gui_enabled() then
-    print = info
-end
-
 function typeof(obj)
     local mt = getmetatable(obj)
     return mt and mt.__typeof or obj.__typeof or type(obj)
@@ -74,7 +67,6 @@ end
 --
 -- since 1.11.3
 function package.prepend_path(name)
-    local debug = require "debug"
     -- get the function calling this package.prepend_path function
     local dt = debug.getinfo(2, "f")
     if not dt then
index 3c12ce283c1e46e770b49d6d01ef9502bdaa2012..b0373f24973523111dfdc4f8bf9d40cbe7cfabfb 100644 (file)
@@ -53,7 +53,6 @@
 
 #define WSLUA_INIT_ROUTINES "init_routines"
 #define WSLUA_PREFS_CHANGED "prefs_changed"
-#define LOG_DOMAIN_LUA "wslua"
 
 typedef void (*wslua_logger_t)(const gchar *, GLogLevelFlags, const gchar *, gpointer);
 extern wslua_logger_t wslua_logger;
index bd706071d769ecda54f85a8698372a8f57042204..9d37efd94916468229c2c2c360571495f448ed2f 100644 (file)
@@ -129,60 +129,6 @@ WSLUA_FUNCTION wslua_report_failure(lua_State* LS) { /* Reports a failure to the
     return 0;
 }
 
-static int wslua_log(lua_State* L, GLogLevelFlags log_level) {
-    GString* str = g_string_new("");
-    int n = lua_gettop(L);  /* Number of arguments */
-    int i;
-
-    lua_getglobal(L, "tostring");
-    for (i=1; i<=n; i++) {
-        const char *s;
-        lua_pushvalue(L, -1);  /* function to be called */
-        lua_pushvalue(L, i);   /* value to print */
-        lua_call(L, 1, 1);
-        s = lua_tostring(L, -1);  /* get result */
-        if (s == NULL)
-            return luaL_error(L, "`tostring' must return a string");
-
-        if (i>1) g_string_append(str,"\t");
-        g_string_append(str,s);
-
-        lua_pop(L, 1);  /* pop result */
-    }
-    g_string_append_c(str, '\n');
-
-    wslua_logger(LOG_DOMAIN_LUA, log_level, str->str, NULL);
-    g_string_free(str,TRUE);
-
-    return 0;
-}
-
-WSLUA_FUNCTION wslua_critical( lua_State* L ) { /* Will add a log entry with critical severity. */
-/* WSLUA_MOREARGS critical objects to be printed    */
-    wslua_log(L,G_LOG_LEVEL_CRITICAL);
-    return 0;
-}
-WSLUA_FUNCTION wslua_warn( lua_State* L ) { /* Will add a log entry with warn severity. */
-/* WSLUA_MOREARGS warn objects to be printed    */
-    wslua_log(L,G_LOG_LEVEL_WARNING);
-    return 0;
-}
-WSLUA_FUNCTION wslua_message( lua_State* L ) { /* Will add a log entry with message severity. */
-/* WSLUA_MOREARGS message objects to be printed    */
-    wslua_log(L,G_LOG_LEVEL_MESSAGE);
-    return 0;
-}
-WSLUA_FUNCTION wslua_info( lua_State* L ) { /* Will add a log entry with info severity. */
-/* WSLUA_MOREARGS info objects to be printed    */
-    wslua_log(L,G_LOG_LEVEL_INFO);
-    return 0;
-}
-WSLUA_FUNCTION wslua_debug( lua_State* L ) { /* Will add a log entry with debug severity. */
-/* WSLUA_MOREARGS debug objects to be printed    */
-    wslua_log(L,G_LOG_LEVEL_DEBUG);
-    return 0;
-}
-
 /* The returned filename is g_malloc()'d so the caller must free it */
 /* except when NULL is returned if file doesn't exist               */
 char* wslua_get_actual_filename(const char* fname) {
index 762e4972383f70f8bf03bfb6ce9233223504f149..efa744c8b0730d2708fe9a5cec6c535ece4c0500 100644 (file)
         ["wrap"] = '<function 378>',
         ["yield"] = '<function 379>'
     },
-    ["critical"] = '<function 380>',
     ["datafile_path"] = '<function 33>',
-    ["debug"] = '<function 381>',
     ["deregister_filehandler"] = '<function 382>',
     ["dofile"] = '<function 383>',
     ["enable_lua"] = true,
         [2] = "H225_OTHERS",
         [0] = "H225_RAS"
     },
-    ["info"] = '<function 392>',
     ["init_routines"] = {},
     ["io"] = {
         ["close"] = '<function 393>',
         ["tan"] = '<function 433>',
         ["tanh"] = '<function 434>'
     },
-    ["message"] = '<function 435>',
     ["module"] = '<function 436>',
     ["new_dialog"] = '<function 437>',
     ["next"] = '<function 438>',
     ["type"] = '<function 501>',
     ["typeof"] = '<function 502>',
     ["unpack"] = '<function 498>',
-    ["warn"] = '<function 503>',
     ["wtap"] = {
         ["APPLE_IP_OVER_IEEE1394"] = 62,
         ["ARCNET"] = 8,