fix leaks in path_lookupat()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
eddecbb601
commit
bd23a539d0
1 changed files with 5 additions and 2 deletions
|
@ -1644,13 +1644,16 @@ static int path_lookupat(int dfd, const char *name,
|
||||||
err = -ECHILD;
|
err = -ECHILD;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!err)
|
if (!err) {
|
||||||
err = handle_reval_path(nd);
|
err = handle_reval_path(nd);
|
||||||
|
if (err)
|
||||||
|
path_put(&nd->path);
|
||||||
|
}
|
||||||
|
|
||||||
if (!err && nd->flags & LOOKUP_DIRECTORY) {
|
if (!err && nd->flags & LOOKUP_DIRECTORY) {
|
||||||
if (!nd->inode->i_op->lookup) {
|
if (!nd->inode->i_op->lookup) {
|
||||||
path_put(&nd->path);
|
path_put(&nd->path);
|
||||||
return -ENOTDIR;
|
err = -ENOTDIR;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue