From f5cd913adfa5d619885eceb66d36030ec18379a1 Mon Sep 17 00:00:00 2001 From: ntr Date: Fri, 12 Oct 2018 16:44:15 +1100 Subject: [PATCH] handle errors --- server/src/net.rs | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/server/src/net.rs b/server/src/net.rs index 11cbae04..759a9cfc 100755 --- a/server/src/net.rs +++ b/server/src/net.rs @@ -62,14 +62,6 @@ pub fn start() { let pool = db_connection(database_url); - // listen("127.0.0.1:40000", |out| { - // let db = pool.clone(); - // let handler = spawn(move || { - // }); - // let result = handler.join().unwrap(); - // return result; - // }).unwrap(); - let server = TcpListener::bind("0.0.0.0:40000").unwrap(); for stream in server.incoming() { let db = pool.clone(); @@ -78,9 +70,20 @@ pub fn start() { let rpc = Rpc {}; loop { - let msg = websocket.read_message().unwrap(); - let db_connection = db.get().expect("unable to get db connection"); - receive(db_connection, &rpc, msg, &mut websocket); + match websocket.read_message() { + Ok(msg) => { + let db_connection = db.get().expect("unable to get db connection"); + match receive(db_connection, &rpc, msg, &mut websocket) { + Ok(_r) => (), + Err(e) => println!("{:?}", e), + } + }, + // connection is closed + Err(e) => { + println!("{:?}", e); + return; + } + }; } }); }