private void HandleFail(string message)
{
General.WriteLogLine(message);
updatefailed = true;
// First error after success?
if(nextupdatedelay == NORMAL_UPDATE_DELAY)
{
// Try again earlier
nextupdatedelay = QUICK_UPDATE_DELAY;
}
else
{
// Increase the delay
nextupdatedelay = nextupdatedelay * 2;
// Limit delay to 10 min
if(nextupdatedelay > MAX_UPDATE_DELAY)
{
nextupdatedelay = MAX_UPDATE_DELAY;
// TODO: Something is obviously wrong. Sound the alarm!
}
}
}