Fix issue with use of incorrect index in group list

If a group is not found there is a mismatch with group count
and actual number of groups in the list leading to some
groups not getting set correctly.

CRs-Fixed: 2303952

Change-Id: Iafb3aa4e90a79b511f3d36e42583e013fd05391b
This commit is contained in:
Bhavna Sharma 2018-08-27 15:32:35 -07:00
parent a190b2c116
commit 9831975c76

View file

@ -835,11 +835,9 @@ int loc_read_process_conf(const char* conf_file_name, uint32_t * process_count_p
for(i=0; i<ngroups; i++) {
struct group* grp = getgrnam(split_strings[i]);
if (grp) {
child_proc[j].group_list[i] = grp->gr_gid;
child_proc[j].group_list[child_proc[j].num_groups] = grp->gr_gid;
child_proc[j].num_groups++;
LOC_LOGD("%s:%d]:Group %s = %d matches child_group: %d\n",
__func__, __LINE__, split_strings[i],
grp->gr_gid,child_proc[j].group_list[i]);
LOC_LOGd("Group %s = %d", split_strings[i], grp->gr_gid);
}
}