=================================================================== RCS file: /cvs/mandoc/mdoc_man.c,v retrieving revision 1.76 retrieving revision 1.80 diff -u -p -r1.76 -r1.80 --- mandoc/mdoc_man.c 2014/11/27 22:27:56 1.76 +++ mandoc/mdoc_man.c 2014/12/23 13:48:57 1.80 @@ -1,4 +1,4 @@ -/* $Id: mdoc_man.c,v 1.76 2014/11/27 22:27:56 schwarze Exp $ */ +/* $Id: mdoc_man.c,v 1.80 2014/12/23 13:48:57 schwarze Exp $ */ /* * Copyright (c) 2011, 2012, 2013, 2014 Ingo Schwarze * @@ -434,7 +434,9 @@ print_offs(const char *v, int keywords) sz = 6; else if (keywords && !strcmp(v, "indent-two")) sz = 12; - else if (a2roffsu(v, &su, SCALE_MAX)) { + else if (a2roffsu(v, &su, SCALE_EN) > 1) { + if (su.scale < 0.0) + su.scale = 0.0; if (SCALE_EN == su.unit) sz = su.scale; else { @@ -481,7 +483,9 @@ print_width(const char *v, const struct mdoc_node *chi /* Convert v into a number (of characters). */ if (NULL == v) sz = defsz; - else if (a2roffsu(v, &su, SCALE_MAX)) { + else if (a2roffsu(v, &su, SCALE_MAX) > 1) { + if (su.scale < 0.0) + su.scale = 0.0; if (SCALE_EN == su.unit) sz = su.scale; else { @@ -1602,7 +1606,8 @@ static void post_pf(DECL_ARGS) { - outflags &= ~MMAN_spc; + if ( ! (n->next == NULL || n->next->flags & MDOC_LINE)) + outflags &= ~MMAN_spc; } static int