if (trace) {
struct trace_context *ctx;
- ctx = mh_xmalloc(sizeof(*ctx));
+ NEW(ctx);
ctx->num = -1;
ctx->str = dummy;
- ctx->outbuf = getcpy(NULL);
+ ctx->outbuf = mh_xstrdup("");
cb.trace_func = test_trace;
cb.trace_context = ctx;
for (i = 0; i < addrs->size; i++) {
(q = &pq)->pq_next = NULL;
while ((cp = getname(addrs->msgs[i]))) {
- if ((p = (struct pqpair *) calloc ((size_t) 1, sizeof(*p))) == NULL)
- adios (NULL, "unable to allocate pqpair memory");
+ NEW0(p);
if ((mp = getm(cp, NULL, 0, error, sizeof(error))) == NULL) {
- p->pq_text = getcpy(cp);
- p->pq_error = getcpy(error);
+ p->pq_text = mh_xstrdup(cp);
+ p->pq_error = mh_xstrdup(error);
} else {
p->pq_text = getcpy(mp->m_text);
mnfree(mp);
if ((cp = context_find(usequence)) && *cp) {
char **ap, *dp;
- dp = getcpy(cp);
+ dp = mh_xstrdup(cp);
ap = brkstring(dp, " ", "\n");
for (i = 0; ap && *ap; i++, ap++)
ivector_push_back (seqnum, seq_getnum(mp, *ap));
struct fmt_callbacks *cb)
{
int i, state;
- char name[NAMESZ], rbuf[BUFSIZ];
+ char name[NAMESZ], rbuf[NMH_BUFSIZ];
m_getfld_state_t gstate = 0;
struct comp *c;
int bufsz;
* Read in the message and process the components
*/
- for (state = FLD;;) {
+ for (;;) {
bufsz = sizeof(rbuf);
state = m_getfld(&gstate, name, rbuf, &bufsz, in);
switch (state) {
if (fmt_findcomp("body")) {
if ((i = strlen(rbuf)) < outwidth) {
bufsz = min (outwidth, (int) sizeof rbuf - i);
- state = m_getfld(&gstate, name, rbuf + i,
- &bufsz, in);
+ m_getfld(&gstate, name, rbuf + i, &bufsz, in);
}
fmt_addcomptext("body", rbuf);
litputs(outbuf);
putchar('\n');
free(ctx->outbuf);
- ctx->outbuf = getcpy(outbuf);
+ ctx->outbuf = mh_xstrdup(outbuf);
}
}
static void
dumpone(struct format *fmt)
{
- register int i;
+ int i;
if ((i = findlabel(fmt)) >= 0)
printf("L%d:", i);
case FT_LS_FRIENDLY:
case FT_PARSEADDR:
case FT_MYMBOX:
+ case FT_GETMYMBOX:
+ case FT_GETMYADDR:
printf(", c_name ");
litputs(fmt->f_comp->c_name);
if (fmt->f_comp->c_type)
case FT_LV_LIT:
case FT_LV_PLUS_L:
case FT_LV_MINUS_L:
+ case FT_LV_MULTIPLY_L:
case FT_LV_DIVIDE_L:
case FT_LV_MODULO_L:
printf(" value %d", fmt->f_value);
static int
findlabel(struct format *addr)
{
- register int i;
+ int i;
for (i = 0; i < lused; ++i)
if (addr == lvec[i])
case FT_LV_STRLEN: return("LV_STRLEN");
case FT_LV_PLUS_L: return("LV_PLUS_L");
case FT_LV_MINUS_L: return("LV_MINUS_L");
+ case FT_LV_MULTIPLY_L: return("LV_MULTIPLY_L");
case FT_LV_DIVIDE_L: return("LV_DIVIDE_L");
case FT_LV_MODULO_L: return("LV_MODULO_L");
case FT_LV_CHAR_LEFT: return("LV_CHAR_LEFT");
case FT_FORMATADDR: return("FORMATADDR");
case FT_CONCATADDR: return("CONCATADDR");
case FT_MYMBOX: return("MYMBOX");
+ case FT_GETMYMBOX: return("GETMYMBOX");
+ case FT_GETMYADDR: return("GETMYADDR");
#ifdef FT_ADDTOSEQ
case FT_ADDTOSEQ: return("ADDTOSEQ");
#endif
static char *
test_formataddr (char *orig, char *str)
{
- register int len;
+ int len;
char error[BUFSIZ];
- register int isgroup;
- register char *dst;
- register char *cp;
- register char *sp;
- register struct mailname *mp = NULL;
+ int isgroup;
+ char *dst;
+ char *cp;
+ char *sp;
+ struct mailname *mp = NULL;
/* if we don't have a buffer yet, get one */
if (bufsiz == 0) {
{
struct mailname *mp, *mp2;
- for (mp = mq.m_next; mp; mp = mp2->m_next) {
- mp2 = mp;
+ for (mp = mq.m_next; mp; mp = mp2) {
+ mp2 = mp->m_next;
mnfree(mp);
}
}