Browse Source

Revert "fix: Change PID file path"

This reverts commit d64bdf02de5bb0c34c2165e3dddcb239e6c26034.
MystiPanda 1 year ago
parent
commit
2c8bc51862
1 changed files with 20 additions and 20 deletions
  1. 20 20
      src-tauri/src/utils/dirs.rs

+ 20 - 20
src-tauri/src/utils/dirs.rs

@@ -15,7 +15,6 @@ static VERGE_CONFIG: &str = "verge.yaml";
 static PROFILE_YAML: &str = "profiles.yaml";
 
 static mut RESOURCE_DIR: Option<PathBuf> = None;
-static mut APP_HOME_DIR: Option<PathBuf> = None;
 
 /// portable flag
 #[allow(unused)]
@@ -43,27 +42,28 @@ pub unsafe fn init_portable_flag() -> Result<()> {
 
 /// get the verge app home dir
 pub fn app_home_dir() -> Result<PathBuf> {
-    use tauri::utils::platform::current_exe;
-    let app_exe = current_exe()?;
-    let app_exe = dunce::canonicalize(app_exe)?;
-    let app_dir = app_exe
-        .parent()
-        .ok_or(anyhow::anyhow!("failed to get the portable app dir"))?;
-
-    let portable_home_dir = PathBuf::from(app_dir).join(".config").join(APP_ID);
-    let home_dir = data_dir()
-        .ok_or(anyhow::anyhow!("failed to get app home dir"))?
-        .join(APP_ID);
-
+    #[cfg(target_os = "windows")]
     unsafe {
-        if PORTABLE_FLAG {
-            APP_HOME_DIR = Some(portable_home_dir.clone());
-            Ok(portable_home_dir)
+        use tauri::utils::platform::current_exe;
+
+        if !PORTABLE_FLAG {
+            Ok(data_dir()
+                .ok_or(anyhow::anyhow!("failed to get app home dir"))?
+                .join(APP_ID))
         } else {
-            APP_HOME_DIR = Some(home_dir.clone());
-            Ok(home_dir)
+            let app_exe = current_exe()?;
+            let app_exe = dunce::canonicalize(app_exe)?;
+            let app_dir = app_exe
+                .parent()
+                .ok_or(anyhow::anyhow!("failed to get the portable app dir"))?;
+            Ok(PathBuf::from(app_dir).join(".config").join(APP_ID))
         }
     }
+
+    #[cfg(not(target_os = "windows"))]
+    Ok(data_dir()
+        .ok_or(anyhow::anyhow!("failed to get app home dir"))?
+        .join(APP_ID))
 }
 
 /// get the resources dir
@@ -116,9 +116,9 @@ pub fn app_res_dir() -> Result<PathBuf> {
 
 pub fn clash_pid_path() -> Result<PathBuf> {
     unsafe {
-        Ok(APP_HOME_DIR
+        Ok(RESOURCE_DIR
             .clone()
-            .ok_or(anyhow::anyhow!("failed to get the app home dir"))?
+            .ok_or(anyhow::anyhow!("failed to get the resource dir"))?
             .join("clash.pid"))
     }
 }