I'm having a problem with a TimedTask that's set to run every 5 seconds, but occasionally decides to run every 10 ms, instead. I poked around in the engine source and found that the timer member of the TimedTask instance reaches zero, and then -10, -20, etc. etc.
What's more, doExecute() doesn't seem to return to the update() method. I tried modifying TimedTask.hx to catch exceptions around doExecute(), but that didn't make a difference - doExecute() just seems to somehow quit without returning, although I'm pretty sure that can't (and probably doesn't) actually happen.
Any ideas what's happening here?