{"record":{"id":"4658c3b27635c4fb","repo":"zed-industries/zed","slug":"failed-to-determine-localappdata-directory","errorCode":null,"errorMessage":"failed to determine LocalAppData directory","messagePattern":"failed to determine LocalAppData directory","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/paths/src/paths.rs","lineNumber":161,"sourceCode":"/// Returns the path to the data directory used by Zed.\npub fn data_dir() -> &'static PathBuf {\n    CURRENT_DATA_DIR.get_or_init(|| {\n        if let Some(custom_dir) = CUSTOM_DATA_DIR.get() {\n            custom_dir.clone()\n        } else if cfg!(target_os = \"macos\") {\n            home_dir()\n                .join(\"Library/Application Support\")\n                .join(APP_NAME)\n        } else if cfg!(any(target_os = \"linux\", target_os = \"freebsd\")) {\n            if let Ok(flatpak_xdg_data) = std::env::var(\"FLATPAK_XDG_DATA_HOME\") {\n                flatpak_xdg_data.into()\n            } else {\n                dirs::data_local_dir().expect(\"failed to determine XDG_DATA_HOME directory\")\n            }\n            .join(APP_NAME_LOWERCASE)\n        } else if cfg!(target_os = \"windows\") {\n            dirs::data_local_dir()\n                .expect(\"failed to determine LocalAppData directory\")\n                .join(APP_NAME)\n        } else {\n            config_dir().clone() // Fallback\n        }\n    })\n}\n\npub fn state_dir() -> &'static PathBuf {\n    static STATE_DIR: OnceLock<PathBuf> = OnceLock::new();\n    STATE_DIR.get_or_init(|| {\n        if cfg!(target_os = \"macos\") {\n            return home_dir().join(\".local\").join(\"state\").join(APP_NAME);\n        }\n\n        if cfg!(any(target_os = \"linux\", target_os = \"freebsd\")) {\n            return if let Ok(flatpak_xdg_state) = std::env::var(\"FLATPAK_XDG_STATE_HOME\") {\n                flatpak_xdg_state.into()\n            } else {","sourceCodeStart":143,"sourceCodeEnd":179,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/paths/src/paths.rs#L143-L179","documentation":"Panic on Windows when dirs' local-app-data lookup returns None while computing the data directory: the LocalAppData known folder cannot be resolved (broken User Shell Folders registry value or non-standard environment), so there is no base path for Zed's databases, extensions, and logs.","triggerScenarios":"Thrown at crates/paths/src/paths.rs:161 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check that the Local AppData shell folder resolves (registry User Shell Folders / %LOCALAPPDATA%)","Supply a custom data directory to bypass platform detection","Fall back to the roaming config base or home dir rather than panicking"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}