From b71589000b1859d45cf1f2c247dc91fabf4f6753 Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Thu, 3 Sep 2020 17:42:15 +0000 Subject: If .ti had an excessive argument, using it was attempted, in some cases resulting in an assertion failure. Instead, truncate the temporary indent to a width reasonable in a manual page. I found the issue in an afl run that was performed by Jan Schreiber . --- regress/roff/ti/Makefile | 10 ++++++++-- regress/roff/ti/wide.in | 19 +++++++++++++++++++ regress/roff/ti/wide.out_ascii | 22 ++++++++++++++++++++++ 3 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 regress/roff/ti/wide.in create mode 100644 regress/roff/ti/wide.out_ascii (limited to 'regress/roff/ti') diff --git a/regress/roff/ti/Makefile b/regress/roff/ti/Makefile index 4ac4cde0..aa0b1f97 100644 --- a/regress/roff/ti/Makefile +++ b/regress/roff/ti/Makefile @@ -1,5 +1,11 @@ -# $OpenBSD: Makefile,v 1.1 2017/05/07 17:30:58 schwarze Exp $ +# $OpenBSD: Makefile,v 1.2 2020/09/03 17:37:06 schwarze Exp $ -REGRESS_TARGETS = basic-mdoc basic-man +REGRESS_TARGETS = basic-mdoc basic-man wide + +# groff-1.22.4 defect: +# - Excessive temporare indentations cause excessive line lengths +# instead of being truncated to resonable indentations. + +SKIP_GROFF = wide .include diff --git a/regress/roff/ti/wide.in b/regress/roff/ti/wide.in new file mode 100644 index 00000000..46a1f90b --- /dev/null +++ b/regress/roff/ti/wide.in @@ -0,0 +1,19 @@ +.\" $OpenBSD: wide.in,v 1.1 2020/09/03 17:37:06 schwarze Exp $ +.TH TI-WIDE 1 "September 3, 2020" +.SH NAME +ti-wide \- excessive temporary indentation +.SH DESCRIPTION +Absolute .ti of more than 72n: +.ti 80n +max +.RS 40n +Indented block plus excessive relative indentation: +.ti +40n +max +.RE +.RS 66n +Block beyond 72n: +.ti +4n +same +.RE +Back to normal. diff --git a/regress/roff/ti/wide.out_ascii b/regress/roff/ti/wide.out_ascii new file mode 100644 index 00000000..95a98ddc --- /dev/null +++ b/regress/roff/ti/wide.out_ascii @@ -0,0 +1,22 @@ +TI-WIDE(1) General Commands Manual TI-WIDE(1) + + + +NNAAMMEE + ti-wide - excessive temporary indentation + +DDEESSCCRRIIPPTTIIOONN + Absolute .ti of more than 72n: + max + Indented block plus excessive + relative indentation: + max + Block + beyond + 72n: + same + Back to normal. + + + +OpenBSD September 3, 2020 TI-WIDE(1) -- cgit v1.2.3-56-ge451