{"record":{"id":"5d63a41bfced0fea","repo":"openai/codex","slug":"getfileattributesw-failed-for-err-error","errorCode":null,"errorMessage":"GetFileAttributesW failed for {}: {err} ({error})","messagePattern":"GetFileAttributesW failed for (.+?): (.+?) \\((.+?)\\)","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/windows-sandbox-rs/src/hide_users.rs","lineNumber":138,"sourceCode":"            std::ptr::null_mut(),\n        )\n    };\n    if status != 0 {\n        return Err(anyhow!(\n            \"RegCreateKeyExW failed: {status} ({error})\",\n            error = format_last_error(status as i32)\n        ));\n    }\n    Ok(key)\n}\n\n/// Sets HIDDEN|SYSTEM on `path` if needed, returning whether it changed anything.\nfn hide_directory(path: &Path) -> anyhow::Result<bool> {\n    let wide = to_wide(path);\n    let attrs = unsafe { GetFileAttributesW(wide.as_ptr()) };\n    if attrs == INVALID_FILE_ATTRIBUTES {\n        let err = unsafe { GetLastError() } as i32;\n        return Err(anyhow!(\n            \"GetFileAttributesW failed for {}: {err} ({error})\",\n            path.display(),\n            error = format_last_error(err)\n        ));\n    }\n    let new_attrs = attrs | FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_SYSTEM;\n    if new_attrs == attrs {\n        return Ok(false);\n    }\n    let ok = unsafe { SetFileAttributesW(wide.as_ptr(), new_attrs) };\n    if ok == 0 {\n        let err = unsafe { GetLastError() } as i32;\n        return Err(anyhow!(\n            \"SetFileAttributesW failed for {}: {err} ({error})\",\n            path.display(),\n            error = format_last_error(err)\n        ));\n    }","sourceCodeStart":120,"sourceCodeEnd":156,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/windows-sandbox-rs/src/hide_users.rs#L120-L156","documentation":"Error \"GetFileAttributesW failed for {}: {err} ({error})\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/windows-sandbox-rs/src/hide_users.rs:138 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"339751715c64496cb86246bfb3935f40e309dd3d","analyzedAt":"2026-08-25T05:35:09.876Z","schemaVersion":2},"datasetVersion":"2026-08-25T06:17:31.827Z"}