*
* - Add code to fmttest.c to display your new function.
*
- * - Document the new function in the mh-format(5) man page.
+ * - Document the new function in mh-format(5).
*
*/
#include <h/fmt_compile.h>
#include <h/mts.h>
#include <h/utils.h>
+#include "terminal.h"
#ifdef HAVE_SYS_TIME_H
# include <sys/time.h>
/*
* Find a component in the hash table.
*/
-#define FINDCOMP(comp,name) \
- for (comp = wantcomp[CHASH(name)]; \
- comp && strcmp(comp->c_name,name); \
- comp = comp->c_next) \
- ;
+#define FINDCOMP(comp,name) do { \
+ for (comp = wantcomp[CHASH(name)]; \
+ comp && strcmp(comp->c_name,name); \
+ comp = comp->c_next) \
+ ; \
+ } while (0)
/* Add new component to the hash table */
#define NEWCOMP(cm,name) do { \
while ((nm = t->name)) {
if (*nm == c && strcmp (nm, name) == 0)
- return (ftbl = t);
+ return ftbl = t;
t++;
}
- return (struct ftable *) 0;
+ return NULL;
}
*fmt = formatvec;
free(format_string);
- return (ncomp);
+ return ncomp;
}
static char *
break;
}
if (c == 0)
- return (cp);
+ return cp;
switch (c = *++cp) {
case '%':
case '>':
case '?':
case ']':
- return (cp);
+ return cp;
case '<':
cp = do_if(++cp);
{
char *cp = sp;
int c;
-#ifndef lint
int ljust = 0;
-#endif /* not lint */
int wid = 0;
char fill = ' ';
fp->f_width = wid;
fp->f_fill = fill;
- return (cp);
+ return cp;
}
/*
case FT_GETMYMBOX:
case FT_GETMYADDR:
if (!primed) {
- ismymbox ((struct mailname *) 0);
+ ismymbox(NULL);
primed++;
}
/* FALLTHRU */
cm->c_type |= CT_ADDR;
break;
}
- return (cp);
+ return cp;
}
/*
}
case TF_NOW:
- LV(t->f_type, time((time_t *) 0));
+ LV(t->f_type, time(NULL));
break;
case TF_EXPR_SV:
CERROR("')' expected");
}
--infunction;
- return (cp);
+ return cp;
}
/*
} else if (c == '(') {
cp = do_func (cp);
} else if (c == ')') {
- return (--cp);
+ return --cp;
} else if (c == '%' && *cp == '<') {
cp = do_if (cp+1);
} else {
CERROR ("'(', '{', '%<' or ')' expected");
}
- return (cp);
+ return cp;
}
/*
{
char *cp = sp;
struct format *fexpr,
- *fif = (struct format *)NULL;
+ *fif = NULL;
int c = '<';
for (;;) {
fif = fp; /* loc of GOTO */
fexpr->f_skip = next_fp - fexpr;
- fexpr = (struct format *)NULL;/* no extra ENDIF */
+ fexpr = NULL; /* no extra ENDIF */
cp = compile (cp); /* compile ELSE stmts */
fif->f_skip = next_fp - fif;
if (fexpr) /* IF ... [ELSIF ...] ENDIF */
fexpr->f_skip = next_fp - fexpr;
- return (cp);
+ return cp;
}
/*
for (i = 0; i < DIM(wantcomp); i++)
for (cm = wantcomp[i]; cm; cm = cm->c_next) {
- mh_xfree(cm->c_text);
+ free(cm->c_text);
cm->c_text = NULL;
}
}
{
if (--cm->c_refcount <= 0) {
/* Shouldn't ever be NULL, but just in case ... */
- mh_xfree(cm->c_name);
- mh_xfree(cm->c_text);
+ free(cm->c_name);
+ free(cm->c_text);
if (cm->c_type & CT_DATE)
free(cm->c_tws);
if (cm->c_type & CT_ADDR && cm->c_mn && cm->c_mn != &fmt_mnull)