diff --git a/Kernel/Syscalls/select.cpp b/Kernel/Syscalls/select.cpp index e39c4b6707..f38946f211 100644 --- a/Kernel/Syscalls/select.cpp +++ b/Kernel/Syscalls/select.cpp @@ -78,8 +78,10 @@ KResultOr Process::sys$select(Userspace u dbgln("sys$select: Bad fd number {}", fd); return EBADF; } - fds_info.append({ description.release_nonnull(), block_flags }); - fds.append(fd); + if (!fds_info.try_append({ description.release_nonnull(), block_flags })) + return ENOMEM; + if (!fds.try_append(fd)) + return ENOMEM; } if constexpr (IO_DEBUG || POLL_SELECT_DEBUG)