From ed0a828fd470b72ad8c2266626a37d9664506e45 Mon Sep 17 00:00:00 2001 From: futile Date: Fri, 21 Nov 2025 11:56:52 +0000 Subject: [PATCH] ensure all filters do not use the same name (oops) --- src/features/game_networking.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/features/game_networking.rs b/src/features/game_networking.rs index c9164e2..e5015f7 100644 --- a/src/features/game_networking.rs +++ b/src/features/game_networking.rs @@ -88,9 +88,13 @@ impl GameNetworking { let policy: INetFwPolicy2 = unsafe { CoCreateInstance(&NetFwPolicy2, None, CLSCTX_INPROC_SERVER) }?; let rules = unsafe { policy.Rules() }?; - unsafe { rules.Remove(&BSTR::from(FILTER_NAME_SAVE_SERVER)) }?; + let filter_name = match mode { + Mode::EntireGame(_) => FILTER_NAME_EXE, + Mode::SaveServer(_) => FILTER_NAME_SAVE_SERVER, + }; + unsafe { rules.Remove(&BSTR::from(filter_name)) }?; let rule: INetFwRule = unsafe { CoCreateInstance(&NetFwRule, None, CLSCTX_INPROC_SERVER) }?; - unsafe { rule.SetName(&BSTR::from(FILTER_NAME_SAVE_SERVER)) }?; + unsafe { rule.SetName(&BSTR::from(filter_name)) }?; match mode { Mode::EntireGame(exe_path) => { let exe_path = BSTR::from(exe_path.to_string_lossy().to_string());