]> git.cameronkatri.com Git - mandoc.git/blobdiff - mdoc_html.c
The bufcat() function in -T[x]html was eating one byte off the end of its
[mandoc.git] / mdoc_html.c
index 1db351cee77867610710dbf9e6026d7902734088..33cebdacc11d42d56aef1ced4b5f6c946116d280 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: mdoc_html.c,v 1.170 2011/06/16 22:21:28 kristaps Exp $ */
+/*     $Id: mdoc_html.c,v 1.172 2011/07/04 09:42:38 kristaps Exp $ */
 /*
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  *
@@ -610,6 +610,7 @@ mdoc_sh_pre(MDOC_ARGS)
                return(1);
 
        bufinit(h);
+       bufcat(h, "x");
        for (n = n->child; n; n = n->next) {
                bufcat_id(h, n->string);
                if (n->next)
@@ -636,6 +637,7 @@ mdoc_ss_pre(MDOC_ARGS)
                return(1);
 
        bufinit(h);
+       bufcat(h, "x");
        for (n = n->child; n; n = n->next) {
                bufcat_id(h, n->string);
                if (n->next)
@@ -1633,8 +1635,9 @@ mdoc_sp_pre(MDOC_ARGS)
        SCALE_VS_INIT(&su, 1);
 
        if (MDOC_sp == n->tok) {
-               if (n->child)
-                       a2roffsu(n->child->string, &su, SCALE_VS);
+               if (NULL != (n = n->child))
+                       if ( ! a2roffsu(n->string, &su, SCALE_VS))
+                               SCALE_VS_INIT(&su, atoi(n->string));
        } else
                su.scale = 0;