{"record":{"id":"0d566b17a966a4d0","repo":"openai/codex","slug":"openmutexw-failed-err-0d566b","errorCode":null,"errorMessage":"OpenMutexW failed: {err}","messagePattern":"OpenMutexW failed: (.+?)","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"codex-rs/windows-sandbox-rs/src/bin/setup_main/win/read_acl_mutex.rs","lineNumber":37,"sourceCode":"\nimpl Drop for ReadAclMutexGuard {\n    fn drop(&mut self) {\n        unsafe {\n            let _ = ReleaseMutex(self.handle);\n            CloseHandle(self.handle);\n        }\n    }\n}\n\npub(super) fn read_acl_mutex_exists() -> Result<bool> {\n    let name = to_wide(OsStr::new(READ_ACL_MUTEX_NAME));\n    let handle = unsafe { OpenMutexW(MUTEX_ALL_ACCESS, 0, name.as_ptr()) };\n    if handle == 0 {\n        let err = unsafe { GetLastError() };\n        if err == ERROR_FILE_NOT_FOUND {\n            return Ok(false);\n        }\n        return Err(anyhow::anyhow!(\"OpenMutexW failed: {err}\"));\n    }\n    unsafe {\n        CloseHandle(handle);\n    }\n    Ok(true)\n}\n\npub(super) fn acquire_read_acl_mutex() -> Result<Option<ReadAclMutexGuard>> {\n    let name = to_wide(OsStr::new(READ_ACL_MUTEX_NAME));\n    let handle = unsafe { CreateMutexW(std::ptr::null_mut(), 1, name.as_ptr()) };\n    if handle == 0 {\n        return Err(anyhow::anyhow!(\"CreateMutexW failed: {}\", unsafe {\n            GetLastError()\n        }));\n    }\n    let err = unsafe { GetLastError() };\n    if err == ERROR_ALREADY_EXISTS {\n        unsafe {","sourceCodeStart":19,"sourceCodeEnd":55,"githubUrl":"https://github.com/openai/codex/blob/339751715c64496cb86246bfb3935f40e309dd3d/codex-rs/windows-sandbox-rs/src/bin/setup_main/win/read_acl_mutex.rs#L19-L55","documentation":"Error \"OpenMutexW failed: {err}\" thrown in openai/codex.","triggerScenarios":"Thrown at codex-rs/windows-sandbox-rs/src/bin/setup_main/win/read_acl_mutex.rs:37 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"}