summaryrefslogtreecommitdiffstats
path: root/mandoc.1
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2022-04-28 16:21:09 +0000
committerIngo Schwarze <schwarze@openbsd.org>2022-04-28 16:21:09 +0000
commitc0667bb0674363961e21650dd6fa239e4696d039 (patch)
treec2a9b64e56f4ac90b6b29932d5b5df55c2c8d762 /mandoc.1
parentae95bf4c9468b176445f464bec4255eb69978cfa (diff)
downloadmandoc-c0667bb0674363961e21650dd6fa239e4696d039.tar.gz
The syntax of the roff(7) .mc request is quite special
and the roff_onearg() parsing function is too generic, so provide a dedicated parsing function instead. This fixes an assertion failure when an \o escape sequence is passed as the argument; the bug was found by tb@ using afl(1). It also makes mandoc output more similar to groff in various cases.
Diffstat (limited to 'mandoc.1')
-rw-r--r--mandoc.116
1 files changed, 16 insertions, 0 deletions
diff --git a/mandoc.1 b/mandoc.1
index 6e0c7c67..a730966d 100644
--- a/mandoc.1
+++ b/mandoc.1
@@ -1754,6 +1754,15 @@ request or a
layout modifier has an unknown
.Ar font
argument.
+.It Sy "ignoring distance argument"
+.Pq roff
+In addition to the margin character, an
+.Ic \&mc
+request has a second argument supposed to represent a distance, but the
+.Nm
+implementation of
+.Ic \&mc
+always ignores the second argument.
.It Sy "odd number of characters in request"
.Pq roff
A
@@ -2124,6 +2133,13 @@ The first argument of a
request is neither a single ASCII character
nor a single character escape sequence.
The request is ignored including all its arguments.
+.It Sy "skipping unusable escape sequence"
+.Pq roff
+The first argument of an
+.Ic mc
+request is neither a single ASCII character
+nor a single character escape sequence.
+All arguments are ignored and printing of a margin character is disabled.
.It Sy "missing manual name, using \(dq\(dq"
.Pq mdoc
The first call to