}
#ifdef DBMPWD
if ((pw = getpwnam(gp))) {
- hmalloc(pw);
- add_aka(ak, gp);
+ hmalloc(pw);
+ add_aka(ak, gp);
}
}
#endif /* DBMPWD */
ad = (struct adr *) mh_xmalloc(sizeof(*ad));
ad->ad_text = getcpy(pp);
- ad->ad_local = strchr(pp, '@') == NULL && strchr(pp, '!') == NULL;
+ ad->ad_local = strchr(pp, '@') == NULL;
ad->ad_next = NULL;
if (ak->ak_addr)
ld->ad_next = ad;
p->h_shell = getcpy(pw->pw_shell);
p->h_ngrps = 0;
p->h_next = NULL;
- if (hometail != NULL)
- hometail->h_next = p;
- if (homehead == NULL)
+ /* append to end */
+ if (!homehead)
homehead = p;
+ if (hometail)
+ hometail->h_next = p;
hometail = p;
return p;