Diff

util/timer.lua @ 2366:c3a364342cb4

util.timer: Use luaevent's built-in method of repeating an event (fixes a weird crash)
author Matthew Wild <mwild1@gmail.com>
date Thu, 17 Dec 2009 16:52:39 +0000
parent 2098:a1ad06f1c090
child 2925:692b3c6c5bd2
line wrap: on
line diff
--- a/util/timer.lua	Wed Dec 16 00:11:54 2009 +0500
+++ b/util/timer.lua	Thu Dec 17 16:52:39 2009 +0000
@@ -55,10 +55,10 @@
 else
 	local EVENT_LEAVE = (event.core and event.core.LEAVE) or -1;
 	function _add_task(delay, func)
-		event_base:addevent(nil, event.EV_TIMEOUT, function ()
+		event_base:addevent(nil, 0, function ()
 			local ret = func();
 			if ret then
-				_add_task(ret, func);
+				return 0, ret;
 			else
 				return EVENT_LEAVE;
 			end