diff --git a/kernel/kernel/Process.cpp b/kernel/kernel/Process.cpp index 7571e782..5423a49d 100644 --- a/kernel/kernel/Process.cpp +++ b/kernel/kernel/Process.cpp @@ -3211,8 +3211,10 @@ namespace Kernel BAN::ErrorOr Process::sys_getgroups(gid_t groups[], size_t count) { LockGuard _(m_process_lock); + const auto current = m_credentials.groups(); + if (count == 0) + return current.size(); TRY(validate_pointer_access(groups, count * sizeof(gid_t), true)); - auto current = m_credentials.groups(); if (current.size() > count) return BAN::Error::from_errno(EINVAL); for (size_t i = 0; i < current.size(); i++)