From 7fb744790daa57c526c0baa0b7d2f65f2545cbbd Mon Sep 17 00:00:00 2001 From: Nils Andreas Svee Date: Tue, 13 Oct 2026 22:58:15 +0700 Subject: [PATCH] fix(reflectors): merge missing country metadata without startup conflicts --- src/main.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index bfabdc2..5f6d87d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -196,11 +196,10 @@ fn insert_reflector( endpoint: SocketAddr, definition: ReflectorDefinition, ) -> anyhow::Result<()> { - if let Some(existing) = reflectors.get(&endpoint) { + if let Some(existing) = reflectors.get_mut(&endpoint) { let same_country = match (&existing.country, &definition.country) { (Some(a), Some(b)) => a.eq_ignore_ascii_case(b), - (None, None) => true, - _ => false, + _ => true, }; let same_protocols = existing .protocols @@ -217,6 +216,9 @@ fn insert_reflector( { anyhow::bail!("conflicting reflector definitions for resolved endpoint {endpoint}"); } + if existing.country.is_none() { + existing.country = definition.country; + } } else { reflectors.insert(endpoint, definition); }