From bda2266d7407a12b46baa3f22e6fe5cf027ef581 Mon Sep 17 00:00:00 2001 From: Logan McNaughton <848146+loganmc10@users.noreply.github.com> Date: Wed, 22 Jan 2025 21:47:38 +0100 Subject: [PATCH] fix potential crash --- src/ui/gui/gui_netplay.rs | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/ui/gui/gui_netplay.rs b/src/ui/gui/gui_netplay.rs index b0ea54b..1d55655 100644 --- a/src/ui/gui/gui_netplay.rs +++ b/src/ui/gui/gui_netplay.rs @@ -347,9 +347,10 @@ pub fn netplay_create(app: &mut GopherEguiApp, ctx: &egui::Context) { ui.with_layout(egui::Layout::right_to_left(egui::Align::Center), |ui| { if ui.button("Close").clicked() { - let socket = app.netplay.socket.as_mut().unwrap(); - socket.close(None).unwrap(); - while socket.read().is_ok() {} + if let Some(socket) = app.netplay.socket.as_mut() { + socket.close(None).unwrap(); + while socket.read().is_ok() {} + } app.netplay = Default::default(); }; }) @@ -545,9 +546,10 @@ pub fn netplay_join(app: &mut GopherEguiApp, ctx: &egui::Context) { ); ui.with_layout(egui::Layout::right_to_left(egui::Align::Center), |ui| { if ui.button("Close").clicked() { - let socket = app.netplay.socket.as_mut().unwrap(); - socket.close(None).unwrap(); - while socket.read().is_ok() {} + if let Some(socket) = app.netplay.socket.as_mut() { + socket.close(None).unwrap(); + while socket.read().is_ok() {} + } app.netplay = Default::default(); }; if app.netplay.join_rom_label.is_empty() { @@ -847,9 +849,10 @@ pub fn netplay_wait(app: &mut GopherEguiApp, ctx: &egui::Context) { } ui.with_layout(egui::Layout::right_to_left(egui::Align::Center), |ui| { if ui.button("Close").clicked() { - let socket = app.netplay.socket.as_mut().unwrap(); - socket.close(None).unwrap(); - while socket.read().is_ok() {} + if let Some(socket) = app.netplay.socket.as_mut() { + socket.close(None).unwrap(); + while socket.read().is_ok() {} + } app.netplay = Default::default(); }; });