diff --git a/mozilla/xpcom/threads/nsTimerImpl.cpp b/mozilla/xpcom/threads/nsTimerImpl.cpp index e9bcf0843a0..b1d8fb7398a 100644 --- a/mozilla/xpcom/threads/nsTimerImpl.cpp +++ b/mozilla/xpcom/threads/nsTimerImpl.cpp @@ -344,6 +344,10 @@ void nsTimerImpl::SetDelayInternal(PRUint32 aDelay) mTimeout = now + PR_MillisecondsToInterval(mDelay); + if (mTimeout < now) { // we overflowed + mTimeout = PRIntervalTime(-1); + } + #ifdef DEBUG_TIMERS if (PR_LOG_TEST(gTimerLog, PR_LOG_DEBUG)) { if (mStart == 0)