summaryrefslogtreecommitdiff
path: root/src/kernel/syscalls.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/syscalls.c')
-rw-r--r--src/kernel/syscalls.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/kernel/syscalls.c b/src/kernel/syscalls.c
index 98df4f3..002f3fd 100644
--- a/src/kernel/syscalls.c
+++ b/src/kernel/syscalls.c
@@ -75,11 +75,7 @@ handle_t _syscall_fs_open(const user_ptr path, int len) {
if (len > PATH_MAX) return -1;
// find the first free handle
- for (handle = 0; handle < HANDLE_MAX; handle++) {
- if (process_current->handles[handle].type == HANDLE_EMPTY)
- break;
- }
- if (handle == HANDLE_MAX) return -1;
+ handle = process_find_handle(process_current);
// copy the path to the kernel
virt_iter_new(&iter, path, len, process_current->pages, true, false);