I don't mean to be pedantic, but it strikes me that Timer.stop doesn't stop the timer. It's just retrieving the current value of the timer, not stopping it.