** complete copyright information.
*/
+#include <sysexits.h>
#include <h/mh.h>
#include <h/utils.h>
fp)) {
case FLD:
case FLDPLUS:
- case FLDEOF:
if (state == FLDPLUS) {
cp = getcpy(field);
while (state == FLDPLUS) {
cp = add(field, cp);
}
seq_init(mp, getcpy(name), trimcpy(cp));
- free(cp);
+ mh_free0(&cp);
} else {
seq_init(mp, getcpy(name), trimcpy(field));
}
- if (state == FLDEOF)
- break;
continue;
case BODY:
- case BODYEOF:
- adios(NULL, "no blank lines are permitted in %s",
+ adios(EX_CONFIG, NULL, "no blank lines are permitted in %s",
seqfile);
/* fall */
break;
default:
- adios(NULL, "%s is poorly formatted", seqfile);
+ adios(EX_CONFIG, NULL, "%s is poorly formatted", seqfile);
}
break; /* break from for loop */
}
/* Return error, if too many sequences */
if (i >= NUMATTRS) {
- free(name);
- free(field);
+ mh_free0(&name);
+ mh_free0(&field);
return -1;
}
** name string. Else add it to the list of sequence names.
*/
if (mp->msgattrs[i]) {
- free(name);
+ mh_free0(&name);
} else {
mp->msgattrs[i] = name;
mp->msgattrs[i + 1] = NULL;
}
}
- free(field); /* free string containing message ranges */
+ mh_free0(&field); /* free string containing message ranges */
return i;
}