* process.c (proc_getgroups): get rid of maxgroups dependency.

ngroups can be calculated dynamically.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
kosaki 2011-03-06 15:25:58 +00:00
Родитель b1329e3b63
Коммит c6bb8beb52
2 изменённых файлов: 11 добавлений и 2 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Mon Mar 7 00:21:11 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* process.c (proc_getgroups): get rid of maxgroups dependency.
ngroups can be calculated dynamically.
Sun Mar 6 23:45:40 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* configure.in: rlim_t use standard RUBY_REPLACE_TYPE mechanism.

Просмотреть файл

@ -4563,9 +4563,13 @@ proc_getgroups(VALUE obj)
int i, ngroups;
rb_gid_t *groups;
groups = ALLOCA_N(rb_gid_t, maxgroups);
ngroups = getgroups(0, NULL);
if (ngroups == -1)
rb_sys_fail(0);
ngroups = getgroups(maxgroups, groups);
groups = ALLOCA_N(rb_gid_t, ngroups);
ngroups = getgroups(ngroups, groups);
if (ngroups == -1)
rb_sys_fail(0);