diff options
author | Jeremy Allison <jra@samba.org> | 2001-08-19 18:19:04 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2001-08-19 18:19:04 +0000 |
commit | a680611c0bbc77955ce2b7f2c8668915c1b6c3d2 (patch) | |
tree | ee0d6a32db51b859dba223ff0df1422005f051ad /source3 | |
parent | 4f14ec2dd1c908be0984dda2dfcafff25e4fe944 (diff) | |
download | samba-a680611c0bbc77955ce2b7f2c8668915c1b6c3d2.tar.gz samba-a680611c0bbc77955ce2b7f2c8668915c1b6c3d2.tar.bz2 samba-a680611c0bbc77955ce2b7f2c8668915c1b6c3d2.zip |
Realloc fixes.
Jeremy.
(This used to be commit 6b90263292d03b1ae2d5d18952e78fc26066f30d)
Diffstat (limited to 'source3')
-rw-r--r-- | source3/groupdb/aliasfile.c | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/source3/groupdb/aliasfile.c b/source3/groupdb/aliasfile.c index 2735fef38f..fc4489f50e 100644 --- a/source3/groupdb/aliasfile.c +++ b/source3/groupdb/aliasfile.c @@ -119,34 +119,29 @@ static char *get_alias_members(char *p, int *num_mem, LOCAL_GRP_MEMBER **members fstring name; if (num_mem == NULL || members == NULL) - { return NULL; - } (*num_mem) = 0; (*members) = NULL; - while (next_token(&p, name, ",", sizeof(fstring))) - { + while (next_token(&p, name, ",", sizeof(fstring))) { LOCAL_GRP_MEMBER *mbrs; DOM_SID sid; uint8 type; - if (lookup_sid(name, &sid, &type)) - { + if (lookup_sid(name, &sid, &type)) { mbrs = Realloc((*members), ((*num_mem)+1) * sizeof(LOCAL_GRP_MEMBER)); (*num_mem)++; - } - else - { + } else { DEBUG(0,("alias database: could not resolve alias named %s\n", name)); continue; } - if (mbrs == NULL) - { + if (mbrs == NULL) { + if (*members) + free(*members); return NULL; - } - else (*members) = mbrs; + } else + (*members) = mbrs; fstrcpy((*members)[(*num_mem)-1].name, name); (*members)[(*num_mem)-1].sid_use = type; |