Don't exit if too many spirc failures.

This commit is contained in:
Konstantin Seiler 2020-01-23 19:51:09 +11:00
parent f26db01110
commit dadab486d2

View file

@ -513,16 +513,17 @@ impl Future for Main {
while (!self.auto_connect_times.is_empty()) && ((Instant::now() - self.auto_connect_times[0]).as_secs() > 600) {
let _ = self.auto_connect_times.remove(0);
}
if self.auto_connect_times.len() >= 5 {
error!("Spirc shut down too often. Exiting to avoid too many login attempts.");
return Ok(Async::Ready(()));
}
if let Some(credentials) = self.last_credentials.clone() {
self.auto_connect_times.push(Instant::now());
self.credentials(credentials);
progress = true;
if self.auto_connect_times.len() >= 5 {
warn!("Spirc shut down too often. Not reconnecting automatically.");
} else {
self.auto_connect_times.push(Instant::now());
self.credentials(credentials);
}
}
}
progress = true;
}
}