diff --git a/src-tauri/src/cmd/proxy.rs b/src-tauri/src/cmd/proxy.rs index 1d361bb23..c6b58a035 100644 --- a/src-tauri/src/cmd/proxy.rs +++ b/src-tauri/src/cmd/proxy.rs @@ -30,7 +30,7 @@ pub async fn get_proxies() -> CmdResult { let proxies = manager.get_refresh_proxies().await?; { let mut state = cmd_proxy_state.lock().unwrap(); - state.proxies = proxies; + state.proxies = Box::new(proxies); state.need_refresh = false; } log::debug!(target: "app", "proxies刷新成功"); @@ -40,7 +40,7 @@ pub async fn get_proxies() -> CmdResult { let state = cmd_proxy_state.lock().unwrap(); state.proxies.clone() }; - Ok(proxies) + Ok(*proxies) } #[tauri::command] @@ -63,7 +63,7 @@ pub async fn get_providers_proxies() -> CmdResult { let providers = manager.get_providers_proxies().await?; { let mut state = cmd_proxy_state.lock().unwrap(); - state.providers_proxies = providers; + state.providers_proxies = Box::new(providers); state.need_refresh = false; } log::debug!(target: "app", "providers_proxies刷新成功"); @@ -73,5 +73,5 @@ pub async fn get_providers_proxies() -> CmdResult { let state = cmd_proxy_state.lock().unwrap(); state.providers_proxies.clone() }; - Ok(providers_proxies) + Ok(*providers_proxies) } diff --git a/src-tauri/src/state/proxy.rs b/src-tauri/src/state/proxy.rs index 0382c11c4..c3df7d8db 100644 --- a/src-tauri/src/state/proxy.rs +++ b/src-tauri/src/state/proxy.rs @@ -1,8 +1,10 @@ +use serde_json::Value; + pub struct CmdProxyState { pub last_refresh_time: std::time::Instant, pub need_refresh: bool, - pub proxies: serde_json::Value, - pub providers_proxies: serde_json::Value, + pub proxies: Box, + pub providers_proxies: Box, } impl Default for CmdProxyState { @@ -10,8 +12,8 @@ impl Default for CmdProxyState { Self { last_refresh_time: std::time::Instant::now(), need_refresh: true, - proxies: serde_json::Value::Null, - providers_proxies: serde_json::Value::Null, + proxies: Box::new(Value::Null), + providers_proxies: Box::new(Value::Null), } } }