summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorAnton Kling <anton@kling.gg>2024-11-22 22:12:12 +0100
committerAnton Kling <anton@kling.gg>2024-11-22 22:12:12 +0100
commitd39100c01385815174f2c4ad2058b9b2a00c18f9 (patch)
treedd5ebea52090e98a01c49e9ef727c0c7f9a2e31d /kernel
parent241b2fca894861b31dd28aabc9cb7e2b6df16051 (diff)
vfs: Close new file descriptor if already in use when calling dup2
Diffstat (limited to 'kernel')
-rw-r--r--kernel/fs/vfs.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/fs/vfs.c b/kernel/fs/vfs.c
index d76e56c..9684a18 100644
--- a/kernel/fs/vfs.c
+++ b/kernel/fs/vfs.c
@@ -399,6 +399,7 @@ int vfs_dup2(int org_fd, int new_fd) {
if (org_fd == new_fd) {
return -EINVAL;
}
+ vfs_close(new_fd);
vfs_fd_t *orig;
if (!relist_get(&current_task->file_descriptors, org_fd, (void **)&orig,