summaryrefslogtreecommitdiff
path: root/lib/getgroups.c
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2003-10-31 13:44:24 +0000
committerJim Meyering <jim@meyering.net>2003-10-31 13:44:24 +0000
commit1d5daf4d88d6904a8a8973e276350de5bc7bee2c (patch)
treeb819ef40db067aa8b50cb519e14725fdd207221c /lib/getgroups.c
parente3f195ba3cdd204a3d14522f21d24cde0d724bd4 (diff)
downloadcoreutils-1d5daf4d88d6904a8a8973e276350de5bc7bee2c.tar.xz
Update from gnulib.
Diffstat (limited to 'lib/getgroups.c')
-rw-r--r--lib/getgroups.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/getgroups.c b/lib/getgroups.c
index e27cadc3e..4ffa4e08f 100644
--- a/lib/getgroups.c
+++ b/lib/getgroups.c
@@ -43,16 +43,16 @@ getgroups (int n, GETGROUPS_T *group)
return getgroups (n, group);
n = 20;
- gbuf = NULL;
while (1)
{
/* No need to worry about address arithmetic overflow here,
since the ancient systems that we're running on have low
limits on the number of secondary groups. */
- gbuf = xrealloc (gbuf, n * sizeof (GETGROUPS_T));
+ gbuf = xmalloc (gbuf, n * sizeof *gbuf);
n_groups = getgroups (n, gbuf);
if (n_groups < n)
break;
+ free (gbuf);
n += 10;
}