"curSystemClock > m_softSuspendTimer" will fail when SystemClockMillis wraps.
You should use class EndTime.