From 97eef1e7251856f9dc650f33cd261aa1af7533d8 Mon Sep 17 00:00:00 2001 From: t8y2 Date: Thu, 24 Sep 2026 22:19:23 +0800 Subject: [PATCH] fix(core): gate default secret key path resolution out of test builds --- .../dbx-core/src/persistence/secret_codec.rs | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/crates/dbx-core/src/persistence/secret_codec.rs b/crates/dbx-core/src/persistence/secret_codec.rs index 00a6bad824..acb9ecb3e8 100644 --- a/crates/dbx-core/src/persistence/secret_codec.rs +++ b/crates/dbx-core/src/persistence/secret_codec.rs @@ -493,16 +493,19 @@ fn default_key_path() -> Option { { return Some(std::env::temp_dir().join("dbx-test-secret.key")); } - #[cfg(target_os = "macos")] - if let Ok(home) = std::env::var("HOME") { - return Some(std::path::PathBuf::from(home).join("Library/Application Support/dbx/secret.key")); + #[cfg(not(test))] + { + #[cfg(target_os = "macos")] + if let Ok(home) = std::env::var("HOME") { + return Some(std::path::PathBuf::from(home).join("Library/Application Support/dbx/secret.key")); + } + if let Ok(config) = std::env::var("XDG_CONFIG_HOME") { + return Some(std::path::PathBuf::from(config).join("dbx/secret.key")); + } + std::env::var_os("APPDATA").map(std::path::PathBuf::from).map(|path| path.join("dbx/secret.key")).or_else( + || std::env::var_os("HOME").map(std::path::PathBuf::from).map(|path| path.join(".config/dbx/secret.key")), + ) } - if let Ok(config) = std::env::var("XDG_CONFIG_HOME") { - return Some(std::path::PathBuf::from(config).join("dbx/secret.key")); - } - std::env::var_os("APPDATA").map(std::path::PathBuf::from).map(|path| path.join("dbx/secret.key")).or_else(|| { - std::env::var_os("HOME").map(std::path::PathBuf::from).map(|path| path.join(".config/dbx/secret.key")) - }) } fn aad(namespace: &str, key: &str) -> String {