summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@cvs.openbsd.org>2015-08-30 18:59:45 +0000
committerIngo Schwarze <schwarze@cvs.openbsd.org>2015-08-30 18:59:45 +0000
commit73fc2fbe093aef12e1b71676f3eef489bcdb7834 (patch)
treeedf1da1088407104faa3fd84850c6deec21e97ad
parent48eca26592f9368de0590139ceb11a947c869c01 (diff)
If an .Fo macro lacks its mandatory argument, don't die on an assertion.
Bug found by jsg@ with afl.
-rw-r--r--usr.bin/mandoc/mdoc_html.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/usr.bin/mandoc/mdoc_html.c b/usr.bin/mandoc/mdoc_html.c
index 7dba7ae3579..e2605c1b9ca 100644
--- a/usr.bin/mandoc/mdoc_html.c
+++ b/usr.bin/mandoc/mdoc_html.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mdoc_html.c,v 1.107 2015/04/18 17:50:02 schwarze Exp $ */
+/* $OpenBSD: mdoc_html.c,v 1.108 2015/08/30 18:59:44 schwarze Exp $ */
/*
* Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2014, 2015 Ingo Schwarze <schwarze@openbsd.org>
@@ -1640,11 +1640,10 @@ mdoc_fo_pre(MDOC_ARGS)
return(1);
}
- /* XXX: we drop non-initial arguments as per groff. */
+ if (n->child == NULL)
+ return(0);
- assert(n->child);
assert(n->child->string);
-
PAIR_CLASS_INIT(&tag, "fname");
t = print_otag(h, TAG_B, 1, &tag);
print_text(h, n->child->string);