=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mandoc/mdoc_html.c,v retrieving revision 1.153 retrieving revision 1.154 diff -c -r1.153 -r1.154 *** src/usr.bin/mandoc/mdoc_html.c 2017/03/17 12:06:02 1.153 --- src/usr.bin/mandoc/mdoc_html.c 2017/04/17 12:52:00 1.154 *************** *** 1,4 **** ! /* $OpenBSD: mdoc_html.c,v 1.153 2017/03/17 12:06:02 schwarze Exp $ */ /* * Copyright (c) 2008-2011, 2014 Kristaps Dzonsons * Copyright (c) 2014, 2015, 2016, 2017 Ingo Schwarze --- 1,4 ---- ! /* $OpenBSD: mdoc_html.c,v 1.154 2017/04/17 12:52:00 schwarze Exp $ */ /* * Copyright (c) 2008-2011, 2014 Kristaps Dzonsons * Copyright (c) 2014, 2015, 2016, 2017 Ingo Schwarze *************** *** 1344,1362 **** static int mdoc_lk_pre(MDOC_ARGS) { ! if (NULL == (n = n->child)) return 0; ! assert(n->type == ROFFT_TEXT); ! ! print_otag(h, TAG_A, "cTh", "Lk", n->string); ! ! if (NULL == n->next) print_text(h, n->string); ! ! for (n = n->next; n; n = n->next) print_text(h, n->string); return 0; } --- 1344,1368 ---- static int mdoc_lk_pre(MDOC_ARGS) { ! struct tag *t; ! ! if ((n = n->child) == NULL) return 0; ! /* Link target and link text. */ ! t = print_otag(h, TAG_A, "cTh", "Lk", n->string); ! if (n->next == NULL || n->next->flags & NODE_DELIMC) print_text(h, n->string); ! for (n = n->next; n != NULL && !(n->flags & NODE_DELIMC); n = n->next) print_text(h, n->string); + print_tagq(h, t); + /* Trailing punctuation. */ + while (n != NULL) { + h->flags |= HTML_NOSPACE; + print_text(h, n->string); + n = n->next; + } return 0; }