fix nasty bug of timers not being re-evaluated on rare case.
authorbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 6 Jun 2009 22:31:34 +0000 (22:31 +0000)
committerbarbieri <barbieri@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 6 Jun 2009 22:31:34 +0000 (22:31 +0000)
commitb9d658f2c5d56a3710856adfa22aa0c21b6ecdae
tree879d94d362751cca130b79ae75b2ec9f7cbe7643
parent9497c8c1d280810db3d7c753befad31d98dfd446
fix nasty bug of timers not being re-evaluated on rare case.

If there are no other main loop activity than a idlers and one idler
adds a timer, the new (and unique) timer would be ignored since it's
flagged as "just_added" and thus next iteration will not consider it,
possible entering an infinite wait as it could be the only thing to do
in main loop.

Antognolli found this nasty bug while handling timeout-and-die in
Ethumb, where the "disconnect" event is dispatched by EDBus from idler
and it was adding a timer to shutdown the daemon after a while without
clients.

By: Rafael Antognolli <antognolli@profusion.mobi>

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/ecore@40923 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33
src/lib/ecore/ecore_main.c