util.timer: More small fixes I forgot to commit
authorMatthew Wild <mwild1@gmail.com>
Thu, 26 Feb 2009 22:17:55 +0000 (22:17 +0000)
committerMatthew Wild <mwild1@gmail.com>
Thu, 26 Feb 2009 22:17:55 +0000 (22:17 +0000)
util/timer.lua

index 8bb1c11507b6e30615adc5ea450f3a4db9df76b9..3db66832bab8a757021093cc43877051c5907d5f 100644 (file)
@@ -32,18 +32,16 @@ add_task = _add_task;
 ns_addtimer(function()
        local current_time = get_time();
        if #new_data > 0 then
-               for _, d in ipairs(new_data) do
+               for _, d in pairs(new_data) do
                        t_insert(data, d);
                end
                new_data = {};
-       elseif #data == 0 then
-               return;
        end
        
        for i, d in pairs(data) do
                local t, func = d[1], d[2];
                if t <= current_time then
-                       t_remove(data, i);
+                       data[i] = nil;
                        local r = func();
                        if type(r) == "number" then _add_task(r, func); end
                end