X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/b297c96099a08a9f2b7e20e80a8f43515fabd714..c8cc1783ef26803aeb94747ff8704bbe6962628a:/lunaix-os/kernel/fs/path_walk.c diff --git a/lunaix-os/kernel/fs/path_walk.c b/lunaix-os/kernel/fs/path_walk.c index 7b49219..246e903 100644 --- a/lunaix-os/kernel/fs/path_walk.c +++ b/lunaix-os/kernel/fs/path_walk.c @@ -95,6 +95,7 @@ __vfs_walk(struct v_dnode* start, if (!check_allow_execute(current_inode)) { errno = EACCESS; + unlock_dnode(current_level); goto error; } @@ -106,6 +107,7 @@ __vfs_walk(struct v_dnode* start, if (!dnode) { errno = ENOMEM; + unlock_dnode(current_level); goto error; }