diff --git a/kernel/src/sys/exec.cpp b/kernel/src/sys/exec.cpp index 53c615ce..bf50a4bf 100644 --- a/kernel/src/sys/exec.cpp +++ b/kernel/src/sys/exec.cpp @@ -80,6 +80,7 @@ Result sys_exec(Registers* regs, SyscallArgs args) for (int i = 0; i < FD_MAX; i++) { auto& descriptor = current->fd_table[i]; + if (!descriptor.has_value()) continue; if (descriptor->flags & O_CLOEXEC) descriptor = {}; }