mirror of
https://github.com/RGBCube/serenity
synced 2025-05-15 04:34:59 +00:00
Kernel: rmdir("/") should fail instead of asserting
We can't assume there's always a parent custody -- when we open "/" there isn't gonna be one! Fixes #1858.
This commit is contained in:
parent
4c19305a17
commit
7eeea4d57f
2 changed files with 14 additions and 0 deletions
|
@ -630,6 +630,9 @@ KResult VFS::rmdir(StringView path, Custody& base)
|
|||
if (!inode.is_directory())
|
||||
return KResult(-ENOTDIR);
|
||||
|
||||
if (!parent_custody)
|
||||
return KResult(-EBUSY);
|
||||
|
||||
auto& parent_inode = parent_custody->inode();
|
||||
|
||||
if (!parent_inode.metadata().may_write(*Process::current))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue