Committing code to get nicer tracebacks for errors, also we no longer consider such...
authorMatthew Wild <mwild1@gmail.com>
Sat, 8 Nov 2008 20:42:23 +0000 (20:42 +0000)
committerMatthew Wild <mwild1@gmail.com>
Sat, 8 Nov 2008 20:42:23 +0000 (20:42 +0000)
net/xmppclient_listener.lua
net/xmppserver_listener.lua

index 068557c8df5f8e173f4cb2de2240466beea3d021..64747bc5b960e47fb58cc3607a2ea0b924a8e698 100644 (file)
@@ -60,7 +60,12 @@ function xmppclient.listener(conn, data)
                -- TODO: Below function should be session,stanza - and xmlhandlers should use :method() notation to call,
                -- this will avoid the useless indirection we have atm
                -- (I'm on a mission, no time to fix now)
-               session.stanza_dispatch = function (stanza) return core_process_stanza(session, stanza); end
+
+               -- Debug version --
+               local function handleerr() print("Traceback:", debug.traceback()); end
+               session.stanza_dispatch = function (stanza) return select(2, xpcall(function () return core_process_stanza(session, stanza); end, handleerr));  end
+
+--             session.stanza_dispatch = function (stanza) return core_process_stanza(session, stanza); end
 
        end
        if data then
index 111633d80366ffc3857d944070f80c2a3773bef1..f8b5d1c88a5522dbf93f160b2a75f03db6711aa9 100644 (file)
@@ -62,7 +62,12 @@ function xmppserver.listener(conn, data)
                -- FIXME: Below function should be session,stanza - and xmlhandlers should use :method() notation to call,
                -- this will avoid the useless indirection we have atm
                -- (I'm on a mission, no time to fix now)
-               session.stanza_dispatch = function (stanza) return core_process_stanza(session, stanza); end
+
+               -- Debug version --
+               local function handleerr() print("Traceback:", debug.traceback()); end
+               session.stanza_dispatch = function (stanza) return select(2, xpcall(function () return core_process_stanza(session, stanza); end, handleerr));  end
+
+--             session.stanza_dispatch = function (stanza) return core_process_stanza(session, stanza); end
 
        end
        if data then
@@ -100,4 +105,4 @@ connlisteners_register("xmppserver", xmppserver);
 -- We also need to perform that same initialisation at other points (SASL, TLS, ...)
 
 -- ...and we need to handle data
--- ...and record all sessions associated with connections
\ No newline at end of file
+-- ...and record all sessions associated with connections