Small connection error handling improvement

This commit is contained in:
Imbris 2019-12-31 03:32:37 -05:00
parent ede05c47b0
commit 06ea29bd4c

View File

@ -1,5 +1,5 @@
use client::{error::Error as ClientError, Client}; use client::{error::Error as ClientError, Client};
use common::comp; use common::{comp, net::PostError};
use crossbeam::channel::{unbounded, Receiver, TryRecvError}; use crossbeam::channel::{unbounded, Receiver, TryRecvError};
use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::atomic::{AtomicBool, Ordering};
use std::sync::Arc; use std::sync::Arc;
@ -87,6 +87,10 @@ impl ClientInit {
} }
Err(err) => { Err(err) => {
match err { match err {
ClientError::Network(PostError::Bincode(_)) => {
last_err = Some(Error::ConnectionFailed(err));
break 'tries;
}
// Assume the connection failed and try again soon // Assume the connection failed and try again soon
ClientError::Network(_) => {} ClientError::Network(_) => {}
ClientError::TooManyPlayers => { ClientError::TooManyPlayers => {