我想在 fuse-jna 中运行 memoryfs 示例,但是当我调用 rename 时,它说没有这样的文件,我无法重命名文件。我在重命名中发现了一个错误
public int rename(final String path, final String newName)
{
final MemoryPath p = getPath(path);
if (p == null) {
return -ErrorCodes.ENOENT;
}
final MemoryPath newParent = getParentPath(newName);
if (newParent != null) {
return -ErrorCodes.ENOENT;
}
if (!(newParent instanceof MemoryDirectory)) {
return -ErrorCodes.ENOTDIR;
}
p.delete();
((MemoryDirectory) newParent).add(p);
return 0;
}
这 !应该是 = 在
if (newParent != null) {
return -ErrorCodes.ENOENT;
}
现在我可以正确移动文件,但无法重命名,示例中是否存在错误?我应该怎么做才能使它正确?多谢!