From 6eb92d3657d8b3e578c0a21b8d6ebfbba7c22996 Mon Sep 17 00:00:00 2001 From: Kyle Johnsen Date: Sun, 13 Feb 2022 06:49:53 -0500 Subject: [PATCH] fix for race condition --- src/main.rs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/main.rs b/src/main.rs index f3dbaa8..5a5b34a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -283,12 +283,7 @@ fn client_leave_room(client: &Arc, send_to_client: bool){ println!("Will change master"); //change the master change_master = true; - for (_k,v) in clients.iter() { - if v.id != client.id { - new_master_id = v.id; - break; - } - } + } println!("Client leaving current room {}",&room.name); @@ -318,6 +313,14 @@ fn client_leave_room(client: &Arc, send_to_client: bool){ rooms.remove(&room.name); println!("Destroyed room {}",&room.name) }else if change_master{ + + for (_k,v) in clients.iter() { + if v.id != client.id { + new_master_id = v.id; + break; + } + } + println!("Changing master to {}",new_master_id); for (_k,v) in clients.iter() { send_client_master_message(&v, new_master_id);