vnode_path_to_vnode(): Don't propagate the traverseLeafLink flag, if we've

decided to recursively resolve a symlink. We only have to do the resolution
when the flag is true anyway or the symlink is not the last component of
our path, in which case we have to resolve it anyway. Fixes #3986.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30937 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold 2009-06-01 11:12:12 +00:00
parent b2329f081e
commit fa773c0ae5

View File

@ -2318,8 +2318,8 @@ vnode_path_to_vnode(struct vnode* vnode, char* path, bool traverseLeafLink,
// symlink was just "/"
nextVnode = vnode;
} else {
status = vnode_path_to_vnode(vnode, path, traverseLeafLink,
count + 1, ioContext, &nextVnode, &lastParentID);
status = vnode_path_to_vnode(vnode, path, true, count + 1,
ioContext, &nextVnode, &lastParentID);
}
free(buffer);