X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/2d5d9e243c91784909b11948894e3ba0989107c0..a3724ed39:/uip/fmttest.c?ds=sidebyside diff --git a/uip/fmttest.c b/uip/fmttest.c index d6026b95..ccfe25c0 100644 --- a/uip/fmttest.c +++ b/uip/fmttest.c @@ -1,6 +1,4 @@ - -/* - * fmttest.c -- A program to help test and debug format instructions +/* fmttest.c -- A program to help test and debug format instructions * * This code is Copyright (c) 2012, by the authors of nmh. See the * COPYRIGHT file in the root directory of the nmh distribution for @@ -13,6 +11,7 @@ #include #include #include +#include "../sbr/m_maildir.h" #define FMTTEST_SWITCHES \ X("form formatfile", 0, FORMSW) \ @@ -354,7 +353,7 @@ main (int argc, char **argv) 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; @@ -422,8 +421,8 @@ process_addresses(struct format *fmt, struct msgs_array *addrs, while ((cp = getname(addrs->msgs[i]))) { 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); @@ -434,15 +433,13 @@ process_addresses(struct format *fmt, struct msgs_array *addrs, for (p = pq.pq_next; p; p = q) { c = fmt_findcomp("text"); if (c) { - if (c->c_text) - free(c->c_text); + mh_xfree(c->c_text); c->c_text = p->pq_text; p->pq_text = NULL; } c = fmt_findcomp("error"); if (c) { - if (c->c_text) - free(c->c_text); + mh_xfree(c->c_text); c->c_text = p->pq_error; p->pq_error = NULL; } @@ -451,10 +448,8 @@ process_addresses(struct format *fmt, struct msgs_array *addrs, fputs(charstring_buffer(buffer), stdout); mlistfree(); - if (p->pq_text) - free(p->pq_text); - if (p->pq_error) - free(p->pq_error); + mh_xfree(p->pq_text); + mh_xfree(p->pq_error); q = p->pq_next; free(p); } @@ -516,7 +511,7 @@ process_messages(struct format *fmt, struct msgs_array *comps, done(1); seq_setprev(mp); /* set the Previous-Sequence */ - context_replace(pfolder, folder); /* update curren folder */ + context_replace(pfolder, folder); /* update current folder */ seq_save(mp); /* synchronize message sequences */ context_save(); /* save the context file */ @@ -529,14 +524,13 @@ process_messages(struct format *fmt, struct msgs_array *comps, 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)); num_unseen_seq = i; - if (dp) - free(dp); + mh_xfree(dp); } } @@ -578,7 +572,6 @@ process_messages(struct format *fmt, struct msgs_array *comps, ivector_free (seqnum); folder_free(mp); - return; } /* @@ -610,7 +603,7 @@ process_single_file(FILE *in, struct msgs_array *comps, int *dat, int msgsize, } /* - * Initialize everyting else + * Initialize everything else */ if (dat[0] == -1) @@ -654,7 +647,7 @@ process_single_file(FILE *in, struct msgs_array *comps, int *dat, int msgsize, fmt_addcomptext("body", rbuf); } - /* fall through */ + goto finished; default: goto finished; @@ -671,8 +664,7 @@ finished: for (i = 0; i < comps->size; i += 2) { c = fmt_findcomp(comps->msgs[i]); if (c) { - if (c->c_text) - free(c->c_text); + mh_xfree(c->c_text); c->c_text = getcpy(comps->msgs[i + 1]); } } @@ -706,8 +698,7 @@ process_raw(struct format *fmt, struct msgs_array *text, charstring_t buffer, for (i = 0; i < text->size; i++) { if (c != NULL) { - if (c->c_text != NULL) - free(c->c_text); + mh_xfree(c->c_text); c->c_text = getcpy(text->msgs[i]); } @@ -741,21 +732,21 @@ test_trace(void *context, struct format *fmt, int num, char *str, if (str != ctx->str) { if (changed++) - printf(" "); + putchar(' '); printf("str="); litputs(str); ctx->str = str; } if (changed) - printf("\n"); + putchar('\n'); if (strcmp(outbuf, ctx->outbuf) != 0) { printf("outbuf="); litputs(outbuf); putchar('\n'); free(ctx->outbuf); - ctx->outbuf = getcpy(outbuf); + ctx->outbuf = mh_xstrdup(outbuf); } } @@ -777,7 +768,7 @@ fmt_dump (char *nfs, struct format *fmth) static void dumpone(struct format *fmt) { - register int i; + int i; if ((i = findlabel(fmt)) >= 0) printf("L%d:", i); @@ -901,6 +892,7 @@ dumpone(struct format *fmt) case FT_IF_MATCH: case FT_IF_AMATCH: printf(" continue else goto"); + /* FALLTHRU */ case FT_GOTO: i = findlabel(fmt + fmt->f_skip); printf(" L%d", i); @@ -989,7 +981,7 @@ initlabels(struct format *fmth) static int findlabel(struct format *addr) { - register int i; + int i; for (i = 0; i < lused; ++i) if (addr == lvec[i]) @@ -1091,13 +1083,8 @@ f_typestr(int t) case FT_MYMBOX: return("MYMBOX"); case FT_GETMYMBOX: return("GETMYMBOX"); case FT_GETMYADDR: return("GETMYADDR"); -#ifdef FT_ADDTOSEQ - case FT_ADDTOSEQ: return("ADDTOSEQ"); -#endif case FT_SAVESTR: return("SAVESTR"); -#ifdef FT_PAUSE case FT_PAUSE: return ("PAUSE"); -#endif case FT_DONE: return("DONE"); case FT_NOP: return("NOP"); case FT_GOTO: return("GOTO"); @@ -1143,10 +1130,10 @@ static void litputs(const char *s) { if (s) { - putc('"', stdout); + putchar('"'); while (*s) litputc(*s++); - putc('"', stdout); + putchar('"'); } else fputs("", stdout); } @@ -1158,26 +1145,26 @@ litputc(char c) printf("\\x%02x", (unsigned char) c); } else if (c < 0x20 || c == 0177) { if (c == '\b') { - putc('\\', stdout); - putc('b', stdout); + putchar('\\'); + putchar('b'); } else if (c == '\f') { - putc('\\', stdout); - putc('f', stdout); + putchar('\\'); + putchar('f'); } else if (c == '\n') { - putc('\\', stdout); - putc('n', stdout); + putchar('\\'); + putchar('n'); } else if (c == '\r') { - putc('\\', stdout); - putc('r', stdout); + putchar('\\'); + putchar('r'); } else if (c == '\t') { - putc('\\', stdout); - putc('t', stdout); + putchar('\\'); + putchar('t'); } else { - putc('^', stdout); - putc(c ^ 0x40, stdout); /* DEL to ?, others to alpha */ + putchar('^'); + putchar(c ^ 0x40); /* DEL to ?, others to alpha */ } } else - putc(c, stdout); + putchar(c); } /* @@ -1223,13 +1210,13 @@ static unsigned int bufsiz=0; /* current size of buf */ 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) { @@ -1316,10 +1303,10 @@ insert (struct mailname *np) return 0; for (mp = &mq; mp->m_next; mp = mp->m_next) { - if (!strcasecmp (np->m_host ? np->m_host : "", - mp->m_next->m_host ? mp->m_next->m_host : "") && - !strcasecmp (np->m_mbox ? np->m_mbox : "", - mp->m_next->m_mbox ? mp->m_next->m_mbox : "")) + if (!strcasecmp (FENDNULL(np->m_host), + FENDNULL(mp->m_next->m_host)) && + !strcasecmp (FENDNULL(np->m_mbox), + FENDNULL(mp->m_next->m_mbox))) return 0; } if (!ccme && ismymbox (np))