{"record":{"id":"154b59713a449f78","repo":"sxyazi/yazi","slug":"path-too-long","errorCode":null,"errorMessage":"path too long","messagePattern":"path too long","errorType":"exception","errorClass":"io::Error","httpStatus":null,"severity":"error","filePath":"yazi-fs/src/engine/local/casefold.rs","lineNumber":234,"sourceCode":"\t\tmatch unsafe { FindFirstFileW(wide.as_ptr(), &mut data) } {\n\t\t\tINVALID_HANDLE_VALUE => return Err(io::Error::last_os_error()),\n\t\t\thandle => _ = unsafe { FindClose(handle) },\n\t\t}\n\n\t\tlet name = data.cFileName.split(|&c| c == 0).next().unwrap_or(&data.cFileName);\n\t\tOk(parent.join(OsString::from_wide(name)))\n\t}\n\n\tlet file = std::fs::OpenOptions::new()\n\t\t.access_mode(0)\n\t\t.custom_flags(FILE_FLAG_BACKUP_SEMANTICS | FILE_FLAG_OPEN_REPARSE_POINT)\n\t\t.open(path)?;\n\n\tmatch by_handle(&file, &mut [0u16; 512]) {\n\t\tOk(Either::Left(path)) => Ok(path),\n\t\tOk(Either::Right(len)) => match by_handle(&file, &mut vec![0u16; len as usize])? {\n\t\t\tEither::Left(path) => Ok(path),\n\t\t\tEither::Right(_) => Err(io::Error::new(io::ErrorKind::InvalidData, \"path too long\")),\n\t\t},\n\t\t// Fallback for paths that GetFinalPathNameByHandleW cannot handle,\n\t\t// such as those on DefineDosDeviceW-created devices (error 1005).\n\t\tErr(_) => by_find(path),\n\t}\n}\n\n#[cfg(any(\n\ttarget_os = \"linux\",\n\ttarget_os = \"android\",\n\ttarget_os = \"netbsd\",\n\ttarget_os = \"openbsd\"\n))]\nfn try_from_fd(fd: std::os::fd::RawFd, needle: &Path) -> Option<PathBuf> {\n\tuse std::{ffi::OsString, os::unix::ffi::{OsStrExt, OsStringExt}};\n\n\t#[cfg(any(target_os = \"linux\", target_os = \"android\"))]\n\tlet cand = format!(\"/proc/self/fd/{fd}\");","sourceCodeStart":216,"sourceCodeEnd":252,"githubUrl":"https://github.com/sxyazi/yazi/blob/94abcfa92f4ad3f0a1aef6c1ea083cfb8aa6c8c2/yazi-fs/src/engine/local/casefold.rs#L216-L252","documentation":"Error \"path too long\" thrown in sxyazi/yazi.","triggerScenarios":"Thrown at yazi-fs/src/engine/local/casefold.rs:234 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":"94abcfa92f4ad3f0a1aef6c1ea083cfb8aa6c8c2","analyzedAt":"2026-08-16T09:56:24.836Z","schemaVersion":2},"datasetVersion":"2026-08-16T13:17:31.715Z"}