fix(reflectors): merge missing country metadata without startup conflicts
Build binaries / Build (aarch64-musl) (push) Successful in 1m54s
Build binaries / Build (arm-musleabi) (push) Successful in 1m54s
Build binaries / Build (arm-musleabihf) (push) Successful in 1m56s
Build binaries / Build (armv7-musleabi) (push) Successful in 1m56s
Build binaries / Build (armv7-musleabihf) (push) Successful in 1m56s
Build binaries / Build (i686-musl) (push) Successful in 1m55s
Build binaries / Build (mips64-muslabi64) (push) Successful in 2m0s
Build binaries / Build (mips-musl) (push) Successful in 2m3s
Build binaries / Build (mipsel-musl) (push) Successful in 2m9s
Build binaries / Build (mips64el-muslabi64) (push) Successful in 2m13s
Build binaries / Build (riscv64gc-musl) (push) Successful in 1m53s
Build binaries / Build (x86_64-musl) (push) Successful in 1m53s
Build binaries / Build (aarch64-musl) (push) Successful in 1m54s
Build binaries / Build (arm-musleabi) (push) Successful in 1m54s
Build binaries / Build (arm-musleabihf) (push) Successful in 1m56s
Build binaries / Build (armv7-musleabi) (push) Successful in 1m56s
Build binaries / Build (armv7-musleabihf) (push) Successful in 1m56s
Build binaries / Build (i686-musl) (push) Successful in 1m55s
Build binaries / Build (mips64-muslabi64) (push) Successful in 2m0s
Build binaries / Build (mips-musl) (push) Successful in 2m3s
Build binaries / Build (mipsel-musl) (push) Successful in 2m9s
Build binaries / Build (mips64el-muslabi64) (push) Successful in 2m13s
Build binaries / Build (riscv64gc-musl) (push) Successful in 1m53s
Build binaries / Build (x86_64-musl) (push) Successful in 1m53s
This commit is contained in:
1 file changed
+5
-3
+5
-3
@@ -196,11 +196,10 @@ fn insert_reflector(
|
|||||||
endpoint: SocketAddr,
|
endpoint: SocketAddr,
|
||||||
definition: ReflectorDefinition,
|
definition: ReflectorDefinition,
|
||||||
) -> anyhow::Result<()> {
|
) -> 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) {
|
let same_country = match (&existing.country, &definition.country) {
|
||||||
(Some(a), Some(b)) => a.eq_ignore_ascii_case(b),
|
(Some(a), Some(b)) => a.eq_ignore_ascii_case(b),
|
||||||
(None, None) => true,
|
_ => true,
|
||||||
_ => false,
|
|
||||||
};
|
};
|
||||||
let same_protocols = existing
|
let same_protocols = existing
|
||||||
.protocols
|
.protocols
|
||||||
@@ -217,6 +216,9 @@ fn insert_reflector(
|
|||||||
{
|
{
|
||||||
anyhow::bail!("conflicting reflector definitions for resolved endpoint {endpoint}");
|
anyhow::bail!("conflicting reflector definitions for resolved endpoint {endpoint}");
|
||||||
}
|
}
|
||||||
|
if existing.country.is_none() {
|
||||||
|
existing.country = definition.country;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
reflectors.insert(endpoint, definition);
|
reflectors.insert(endpoint, definition);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user