diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2012-03-23 05:50:24 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2012-03-23 05:50:24 +0000 |
commit | e06ebf6b7ad1aa99afa9c910edb40c5568917a37 (patch) | |
tree | 9e17ee8b29b621753325d9597a23bae82856191e | |
parent | edeb0bcce322040d31d2ee1099e00037f5d8ba78 (diff) | |
download | mandoc-e06ebf6b7ad1aa99afa9c910edb40c5568917a37.tar.gz mandoc-e06ebf6b7ad1aa99afa9c910edb40c5568917a37.tar.zst mandoc-e06ebf6b7ad1aa99afa9c910edb40c5568917a37.zip |
Make the `-width' field to `Bl' not puke if it doesn't have an argument.
This makes mandoc work much, much nicer with Mac OSX manpages.
-rw-r--r-- | mdoc_argv.c | 4 | ||||
-rw-r--r-- | mdoc_validate.c | 11 |
2 files changed, 10 insertions, 5 deletions
diff --git a/mdoc_argv.c b/mdoc_argv.c index 0c721a9d..08386e09 100644 --- a/mdoc_argv.c +++ b/mdoc_argv.c @@ -1,4 +1,4 @@ -/* $Id: mdoc_argv.c,v 1.81 2011/09/18 14:14:15 schwarze Exp $ */ +/* $Id: mdoc_argv.c,v 1.82 2012/03/23 05:50:24 kristaps Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * @@ -81,7 +81,7 @@ static const enum argvflag argvflags[MDOC_ARG_MAX] = { ARGV_NONE, /* MDOC_Ohang */ ARGV_NONE, /* MDOC_Inset */ ARGV_MULTI, /* MDOC_Column */ - ARGV_SINGLE, /* MDOC_Width */ + ARGV_OPT_SINGLE, /* MDOC_Width */ ARGV_NONE, /* MDOC_Compact */ ARGV_NONE, /* MDOC_Std */ ARGV_NONE, /* MDOC_Filled */ diff --git a/mdoc_validate.c b/mdoc_validate.c index 4e9b2f0e..060ccdad 100644 --- a/mdoc_validate.c +++ b/mdoc_validate.c @@ -1,4 +1,4 @@ -/* $Id: mdoc_validate.c,v 1.181 2011/12/03 16:58:54 schwarze Exp $ */ +/* $Id: mdoc_validate.c,v 1.182 2012/03/23 05:50:25 kristaps Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010, 2011 Ingo Schwarze <schwarze@openbsd.org> @@ -661,8 +661,13 @@ pre_bl(PRE_ARGS) comp = 1; break; case (MDOC_Width): - dup = (NULL != n->norm->Bl.width); - width = n->args->argv[i].value[0]; + /* NB: this can be empty! */ + if (n->args->argv[i].sz) { + width = n->args->argv[i].value[0]; + dup = (NULL != n->norm->Bl.width); + break; + } + mdoc_nmsg(mdoc, n, MANDOCERR_IGNARGV); break; case (MDOC_Offset): /* NB: this can be empty! */ |