The getNextOccurrence() method returns the wrong value when the timestamp is midnight and the crontab expression is "* * * * *".
For example, if the current timestamp is '2013-02-13 00:00:00', getNextOccurrence() will return '2013-02-14 00:00:00' (midnight the *next* day). It should return '2013-02-13 00:01:00' (one minute past midnight on the current day).
Add this entry to the test.data.php file to show the problem:
Sulyok Gábor - 2013-07-09 17:29:52 - In reply to message 1 from Eric
I had the same problem, and I looked around a bit in the code.
In class.tdcron.php & calculateDateTime() method has wrong condition in if statement. The findValue() method return false in some cases, and the following conditions do not examine properly, because (!$nhour) is true, when $nhour = false and true, when $nhour = 0 too.
So the solution to the problem is to simply replace the condition to ($nhour === false).