aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/man_html.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2017-03-17 12:10:16 +0000
committerIngo Schwarze <schwarze@openbsd.org>2017-03-17 12:10:16 +0000
commitc419530b09693aaf29ca6cc737b77f6c35089c21 (patch)
treea483547cbe3418091a867796ddf51c22b46b3ddc /man_html.c
parent2cfc7310afb5b9fc57aba0d72188cc20f947c244 (diff)
downloadmandoc-c419530b09693aaf29ca6cc737b77f6c35089c21.tar.gz
mandoc-c419530b09693aaf29ca6cc737b77f6c35089c21.tar.zst
mandoc-c419530b09693aaf29ca6cc737b77f6c35089c21.zip
Fix regression in mdoc_html.c 1.275, man_html 1.134:
For .Sh, .Ss, .SH, .SS, only write selflink if an id could be constructed. Crash reported by Raf Czlonka <rczlonka at gmail dot com>, analysis of root cause by natano@
Diffstat (limited to 'man_html.c')
-rw-r--r--man_html.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/man_html.c b/man_html.c
index 10c544f9..ede0a43b 100644
--- a/man_html.c
+++ b/man_html.c
@@ -1,4 +1,4 @@
-/* $Id: man_html.c,v 1.134 2017/03/15 11:29:53 schwarze Exp $ */
+/* $Id: man_html.c,v 1.135 2017/03/17 12:10:16 schwarze Exp $ */
/*
* Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2013, 2014, 2015, 2017 Ingo Schwarze <schwarze@openbsd.org>
@@ -440,7 +440,8 @@ man_SH_pre(MAN_ARGS)
if (n->type == ROFFT_HEAD) {
id = html_make_id(n);
print_otag(h, TAG_H1, "cTi", "Sh", id);
- print_otag(h, TAG_A, "chR", "selflink", id);
+ if (id != NULL)
+ print_otag(h, TAG_A, "chR", "selflink", id);
free(id);
}
return 1;
@@ -509,7 +510,8 @@ man_SS_pre(MAN_ARGS)
if (n->type == ROFFT_HEAD) {
id = html_make_id(n);
print_otag(h, TAG_H2, "cTi", "Ss", id);
- print_otag(h, TAG_A, "chR", "selflink", id);
+ if (id != NULL)
+ print_otag(h, TAG_A, "chR", "selflink", id);
free(id);
}
return 1;