diff options
Diffstat (limited to 'source3/nsswitch/winbindd_group.c')
-rw-r--r-- | source3/nsswitch/winbindd_group.c | 9 |
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); |