Fix getRunDate() shouldn't modify currentTime parameter

In my code, $currentTime = new \DateTime.
After I call getPreviousRunDate() function, the getRunDate() method modified the original $currentTime and set the second of $currentTime to zero.

This issue causes that I logged the wrong time.
So I suggest to fix this problem.