From abbb30d87bc4eda7ddfe102a00ab8dff3ebf66d7 Mon Sep 17 00:00:00 2001 From: John Doty Date: Mon, 28 Nov 2022 07:03:04 -0800 Subject: [PATCH] Remove ports when they're unconfigured This is closer to what I had intended --- src/client/config.rs | 4 ++++ src/client/ui.rs | 5 +---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/client/config.rs b/src/client/config.rs index a6d5a6a..5f8c9b1 100644 --- a/src/client/config.rs +++ b/src/client/config.rs @@ -15,6 +15,10 @@ pub struct ServerConfig { } impl ServerConfig { + pub fn contains_key(&self, port: u16) -> bool { + self.ports.contains_key(&port) + } + pub fn get(&self, port: u16) -> PortConfig { match self.ports.get(&port) { None => PortConfig { enabled: self.auto, description: None }, diff --git a/src/client/ui.rs b/src/client/ui.rs index 8d979d6..49b3560 100644 --- a/src/client/ui.rs +++ b/src/client/ui.rs @@ -457,14 +457,11 @@ impl UI { } for port in leftover_ports { - let mut enabled = false; if let Some(listener) = self.ports.get_mut(&port) { - enabled = listener.enabled; listener.disconnect(); } - if !enabled { - // Just... forget it? Or leave it around forever? + if !self.config.contains_key(port) { self.ports.remove(&port); } }