diff options
author | Jeremy Allison <jra@samba.org> | 2001-08-18 19:57:41 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2001-08-18 19:57:41 +0000 |
commit | edefe857bd2e16042c97e2321531ddc6cc25b51f (patch) | |
tree | 180df80b3530e2ce4f5b57eb1ce030919c5c6844 /source/nsswitch/wb_client.c | |
parent | a6785bac152bf03db3670f6372b37f4cd5f9fd7a (diff) | |
download | samba-edefe857bd2e16042c97e2321531ddc6cc25b51f.tar.gz samba-edefe857bd2e16042c97e2321531ddc6cc25b51f.tar.xz samba-edefe857bd2e16042c97e2321531ddc6cc25b51f.zip |
More Realloc fixes.
Jeremy.
Diffstat (limited to 'source/nsswitch/wb_client.c')
-rw-r--r-- | source/nsswitch/wb_client.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/source/nsswitch/wb_client.c b/source/nsswitch/wb_client.c index 2a29773b9ec..666daa0aa3c 100644 --- a/source/nsswitch/wb_client.c +++ b/source/nsswitch/wb_client.c @@ -278,7 +278,7 @@ static int wb_getgroups(char *user, gid_t **groups) int winbind_initgroups(char *user, gid_t gid) { - gid_t *groups = NULL; + gid_t *tgr, *groups = NULL; int result; char *sep; @@ -310,13 +310,14 @@ int winbind_initgroups(char *user, gid_t gid) /* Add group to list if necessary */ if (!is_member) { - groups = Realloc(groups, sizeof(gid_t) * ngroups + 1); + tgr = (gid_t *)Realloc(groups, sizeof(gid_t) * ngroups + 1); - if (!groups) { + if (!tgr) { errno = ENOMEM; result = -1; goto done; - } + } else + groups = tgr; groups[ngroups] = gid; ngroups++; |