summaryrefslogtreecommitdiffstats
path: root/mandoc.c
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2011-07-21 23:30:39 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2011-07-21 23:30:39 +0000
commit561fdaf67b6be484562a755697a834c21b10e4d9 (patch)
tree3f7792cc5662c919c2fc20e0490f6ec09d7e41a4 /mandoc.c
parentff6ddfd72fee08b3063dffb618af31325e51beea (diff)
downloadmandoc-561fdaf67b6be484562a755697a834c21b10e4d9.tar.gz
Complete eqn.7 parsing. Features all productions from the original 1975
CACM paper in an LR(1) parse (1 -> eqn_rewind()). Right now the code is a little jungly, but will clear up as I consolidate parse components. The AST structure will also be cleaned up, as right now it's pretty ad hoc (this won't change the parse itself). I added the mandoc_strndup() function will here.
Diffstat (limited to 'mandoc.c')
-rw-r--r--mandoc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/mandoc.c b/mandoc.c
index 6d11e9b7..0f8e5394 100644
--- a/mandoc.c
+++ b/mandoc.c
@@ -432,6 +432,16 @@ mandoc_realloc(void *ptr, size_t size)
return(ptr);
}
+char *
+mandoc_strndup(const char *ptr, size_t sz)
+{
+ char *p;
+
+ p = mandoc_malloc(sz + 1);
+ memcpy(p, ptr, sz);
+ p[(int)sz] = '\0';
+ return(p);
+}
char *
mandoc_strdup(const char *ptr)