1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 05:28:11 +00:00

Kernel: Closing a file descriptor should not always close the file

When there is more than one file descriptor for a file closing
one of them should not close the underlying file.

Previously this relied on the file's ref_count() but at least
for sockets this didn't work reliably.
This commit is contained in:
Gunnar Beutner 2021-04-30 10:33:33 +02:00 committed by Andreas Kling
parent cae33305b0
commit 7a1d09ef1a
3 changed files with 17 additions and 3 deletions

View file

@ -43,4 +43,15 @@ KResultOr<Region*> File::mmap(Process&, FileDescription&, const Range&, u64, int
return ENODEV;
}
KResult File::attach(FileDescription&)
{
m_attach_count++;
return KSuccess;
}
void File::detach(FileDescription&)
{
m_attach_count--;
}
}