summaryrefslogtreecommitdiffstats
path: root/dummy.c
diff options
context:
space:
mode:
Diffstat (limited to 'dummy.c')
-rw-r--r--dummy.c48
1 files changed, 22 insertions, 26 deletions
diff --git a/dummy.c b/dummy.c
index 0f0cd7ac..1b21115f 100644
--- a/dummy.c
+++ b/dummy.c
@@ -25,25 +25,25 @@
#include "libmdocml.h"
#include "private.h"
+#ifdef __Linux__
+#define strlcat strncat
+#endif
-static roffin in[ROFF_MAX];
-static roffout out[ROFF_MAX];
-static roffblkin blkin[ROFF_MAX];
-static roffblkout blkout[ROFF_MAX];
+static int md_dummy_blk_in(int);
+static int md_dummy_blk_out(int);
+static int md_dummy_text_in(int, int *, char **);
+static int md_dummy_text_out(int);
-static int md_dummy_blk_in(int);
-static int md_dummy_blk_out(int);
-static int md_dummy_text_in(int, int *, char **);
-static int md_dummy_text_out(int);
+static void dbg_indent(void);
-static void dbg_indent(void);
-
-static int dbg_lvl = 0;
+static int dbg_lvl = 0;
struct md_dummy {
struct rofftree *tree;
};
+static const char *const toknames[ROFF_MAX] = ROFF_NAMES;
+
static void
dbg_indent(void)
@@ -53,8 +53,10 @@ dbg_indent(void)
*buf = 0;
assert(dbg_lvl >= 0);
+
+ /* LINTED */
for (i = 0; i < dbg_lvl; i++)
- (void)strncat(buf, " ", sizeof(buf) - 1);
+ (void)strlcat(buf, " ", sizeof(buf) - 1);
(void)printf("%s", buf);
}
@@ -65,7 +67,7 @@ md_dummy_blk_in(int tok)
{
dbg_indent();
- (void)printf("+++blk\n");
+ (void)printf("%s\n", toknames[tok]);
dbg_lvl++;
return(1);
}
@@ -78,17 +80,18 @@ md_dummy_blk_out(int tok)
assert(dbg_lvl > 0);
dbg_lvl--;
dbg_indent();
- (void)printf("---blk\n");
+ (void)printf("%s\n", toknames[tok]);
return(1);
}
+/* ARGSUSED */
static int
md_dummy_text_in(int tok, int *argcp, char **argvp)
{
dbg_indent();
- (void)printf("in: text\n");
+ (void)printf("%s\n", toknames[tok]);
return(1);
}
@@ -98,7 +101,7 @@ md_dummy_text_out(int tok)
{
dbg_indent();
- (void)printf("out: text\n");
+ (void)printf("%s\n", toknames[tok]);
return(1);
}
@@ -132,22 +135,15 @@ md_init_dummy(const struct md_args *args,
struct md_mbuf *mbuf, const struct md_rbuf *rbuf)
{
struct md_dummy *p;
- int i;
-
- for (i = 0; i < ROFF_MAX; i++) {
- in[i] = md_dummy_text_in;
- out[i] = md_dummy_text_out;
- blkin[i] = md_dummy_blk_in;
- blkout[i] = md_dummy_blk_out;
- }
if (NULL == (p = malloc(sizeof(struct md_dummy)))) {
warn("malloc");
return(NULL);
}
- p->tree = roff_alloc
- (args, mbuf, rbuf, in, out, blkin, blkout);
+ p->tree = roff_alloc(args, mbuf, rbuf,
+ md_dummy_text_in, md_dummy_text_out,
+ md_dummy_blk_in, md_dummy_blk_out);
if (NULL == p->tree) {
free(p);