errno = ENOMEM;
return -1;
}
+
+ id->groups = malloc(sizeof(gid_t) * 1);
+ if (id->groups == NULL) {
+ errno = ENOMEM;
+ return -1;
+ }
+
+ UWRAP_DLIST_ADD(uwrap.ids, id);
+ uwrap_tls_id = id;
}
id->tid = tid;
id->rgid = id->egid = id->sgid = uwrap.mygid;
id->ngroups = 1;
- id->groups = malloc(sizeof(gid_t) * id->ngroups);
id->groups[0] = uwrap.mygid;
- if (do_alloc) {
- UWRAP_DLIST_ADD(uwrap.ids, id);
- uwrap_tls_id = id;
- }
-
return 0;
}