diff -r 06051191913d -r 542d49518d3a util/events.lua --- a/util/events.lua Wed May 13 23:24:49 2009 +0500 +++ b/util/events.lua Fri May 15 06:23:55 2009 +0500 @@ -53,7 +53,8 @@ if not h then h = {}; handlers[event] = h; end local dispatcher = function(data) for _, handler in ipairs(h) do - handler(data); + local ret = handler(data); + if ret ~= nil then return ret; end end end; dispatchers[event] = dispatcher; @@ -66,7 +67,8 @@ local h = handlers[event]; if h then for _, handler in ipairs(h) do - handler(data); + local ret = handler(data); + if ret ~= nil then return ret; end end end end;