From f1c9a5c1b28ded174b5abd9ebd373ebb08dea4a6 Mon Sep 17 00:00:00 2001 From: Louis Date: Sat, 4 Oct 2025 20:52:13 +0700 Subject: [PATCH] fix: inconsistent data folder path --- src-tauri/src/core/app/commands.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src-tauri/src/core/app/commands.rs b/src-tauri/src/core/app/commands.rs index ba3e493b3..f001e16a2 100644 --- a/src-tauri/src/core/app/commands.rs +++ b/src-tauri/src/core/app/commands.rs @@ -93,7 +93,7 @@ pub fn get_jan_data_folder_path(app_handle: tauri::AppHandle) -> #[tauri::command] pub fn get_configuration_file_path(app_handle: tauri::AppHandle) -> PathBuf { - let app_path = app_handle.path().app_data_dir().unwrap_or_else(|err| { + let app_path = std::fs::canonicalize(app_handle.path().app_data_dir().unwrap_or_else(|err| { log::error!( "Failed to get app data directory: {}. Using home directory instead.", err @@ -107,7 +107,7 @@ pub fn get_configuration_file_path(app_handle: tauri::AppHandle) .expect("Failed to determine the home directory"); PathBuf::from(home_dir) - }); + })).unwrap(); let package_name = env!("CARGO_PKG_NAME"); #[cfg(target_os = "linux")] @@ -138,13 +138,15 @@ pub fn get_configuration_file_path(app_handle: tauri::AppHandle) #[tauri::command] pub fn default_data_folder_path(app_handle: tauri::AppHandle) -> String { - let mut path = app_handle.path().data_dir().unwrap(); + let mut path = app_handle.path().app_data_dir().unwrap(); let app_name = std::env::var("APP_NAME") .unwrap_or_else(|_| app_handle.config().product_name.clone().unwrap()); path.push(app_name); path.push("data"); + path = std::fs::canonicalize(path).unwrap(); + let mut path_str = path.to_str().unwrap().to_string(); if let Some(stripped) = path.to_str().unwrap().to_string().strip_suffix(".ai.app") { @@ -152,6 +154,7 @@ pub fn default_data_folder_path(app_handle: tauri::AppHandle) -> } path_str + } #[tauri::command]