summaryrefslogtreecommitdiff
path: root/indra/newview/llwatchdog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llwatchdog.cpp')
-rw-r--r--indra/newview/llwatchdog.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/indra/newview/llwatchdog.cpp b/indra/newview/llwatchdog.cpp
index 7b5bcf4db0..2782cd9545 100644
--- a/indra/newview/llwatchdog.cpp
+++ b/indra/newview/llwatchdog.cpp
@@ -124,11 +124,17 @@ void LLWatchdogTimeout::setTimeout(F32 d)
void LLWatchdogTimeout::start(const std::string& state)
{
- // Order of operation is very impmortant here.
+ if (mTimeout == 0)
+ {
+ LL_WARNS() << "Cant' start watchdog entry - no timeout set" << LL_ENDL;
+ return;
+ }
+ // Order of operation is very important here.
// After LLWatchdogEntry::start() is called
// LLWatchdogTimeout::isAlive() will be called asynchronously.
ping(state);
- mTimer.start();
+ mTimer.start();
+ mTimer.setTimerExpirySec(mTimeout); // timer expiration set to 0 by start()
LLWatchdogEntry::start();
}
@@ -235,7 +241,6 @@ void LLWatchdog::run()
mSuspects.end(),
std::not1(std::mem_fun(&LLWatchdogEntry::isAlive))
);
-
if(result != mSuspects.end())
{
// error!!!