- ad = (struct adr *) mh_xmalloc(sizeof(*ad));
- ad->ad_text = getcpy(pp);
- ad->ad_local = strchr(pp, '@') == NULL && strchr(pp, '!') == NULL;
+ ad = mh_xcalloc(1, sizeof(*ad));
+ ad->ad_text = mh_xstrdup(pp);
+ ad->ad_local = strchr(pp, '@') == NULL;