Software /
code /
prosody
Diff
util/debug.lua @ 4520:2d85ac26799c
util.debug: Add catch for an "error in error handling"
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 22 Mar 2012 15:08:21 +0000 |
parent | 4519:510f4ba7080f |
child | 4521:4c7495f7f543 |
line wrap: on
line diff
--- a/util/debug.lua Thu Mar 22 15:07:27 2012 +0000 +++ b/util/debug.lua Thu Mar 22 15:08:21 2012 +0000 @@ -88,7 +88,15 @@ return levels; end -function debug.traceback(thread, message, level) +function debug.traceback(...) + local ok, ret = pcall(debug._traceback, ...); + if not ok then + return "Error in error handling: "..ret; + end + return ret; +end + +function debug._traceback(thread, message, level) if type(thread) ~= "thread" then thread, message, level = coroutine.running(), thread, message; end