summaryrefslogtreecommitdiff
path: root/source3/nsswitch/winbindd_group.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/nsswitch/winbindd_group.c')
-rw-r--r--source3/nsswitch/winbindd_group.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/source3/nsswitch/winbindd_group.c b/source3/nsswitch/winbindd_group.c
index f71cdb7ece..07f30f0acc 100644
--- a/source3/nsswitch/winbindd_group.c
+++ b/source3/nsswitch/winbindd_group.c
@@ -614,6 +614,8 @@ enum winbindd_result winbindd_getgrent(struct winbindd_cli_state *state)
fstring domain_group_name;
uint32 result;
gid_t group_gid;
+ int gr_mem_len;
+ char *gr_mem, *new_gr_mem_list;
/* Do we need to fetch another chunk of groups? */
@@ -678,20 +680,17 @@ enum winbindd_result winbindd_getgrent(struct winbindd_cli_state *state)
/* Fill in group membership entry */
if (result) {
- int gr_mem_len;
- char *gr_mem, *new_gr_mem_list;
-
/* Get group membership */
-
result = fill_grent_mem(
ent->domain,
name_list[ent->sam_entry_index].rid,
SID_NAME_DOM_GRP,
&group_list[group_list_ndx].num_gr_mem,
&gr_mem, &gr_mem_len);
+ }
+ if (result) {
/* Append to group membership list */
-
new_gr_mem_list = Realloc(
gr_mem_list,
gr_mem_list_len + gr_mem_len);