ソースを参照

fix: use default bypass when empty

MystiPanda 1 年間 前
コミット
3fc969a50b
1 ファイル変更30 行追加3 行削除
  1. 30 3
      src-tauri/src/core/sysopt.rs

+ 30 - 3
src-tauri/src/core/sysopt.rs

@@ -63,7 +63,16 @@ impl Sysopt {
             enable,
             host: String::from("127.0.0.1"),
             port,
-            bypass: bypass.unwrap_or(DEFAULT_BYPASS.into()),
+            bypass: match bypass {
+                Some(bypass) => {
+                    if bypass.is_empty() {
+                        DEFAULT_BYPASS.into()
+                    } else {
+                        bypass
+                    }
+                }
+                None => DEFAULT_BYPASS.into(),
+            },
         };
 
         if enable {
@@ -101,7 +110,16 @@ impl Sysopt {
         let mut sysproxy = cur_sysproxy.take().unwrap();
 
         sysproxy.enable = enable;
-        sysproxy.bypass = bypass.unwrap_or(DEFAULT_BYPASS.into());
+        sysproxy.bypass = match bypass {
+            Some(bypass) => {
+                if bypass.is_empty() {
+                    DEFAULT_BYPASS.into()
+                } else {
+                    bypass
+                }
+            }
+            None => DEFAULT_BYPASS.into(),
+        };
 
         let port = Config::verge()
             .latest()
@@ -281,7 +299,16 @@ impl Sysopt {
                     enable: true,
                     host: "127.0.0.1".into(),
                     port,
-                    bypass: bypass.unwrap_or(DEFAULT_BYPASS.into()),
+                    bypass: match bypass {
+                        Some(bypass) => {
+                            if bypass.is_empty() {
+                                DEFAULT_BYPASS.into()
+                            } else {
+                                bypass
+                            }
+                        }
+                        None => DEFAULT_BYPASS.into(),
+                    },
                 };
 
                 log_err!(sysproxy.set_system_proxy());