Element next-line scopes may nest, so man_breakscope() may have to
authorschwarze <schwarze@openbsd.org>
Thu, 28 Apr 2022 10:17:37 +0000 (10:17 +0000)
committerschwarze <schwarze@openbsd.org>
Thu, 28 Apr 2022 10:17:37 +0000 (10:17 +0000)
commitcfaf94d5064fa049c2bfa296896bce4800cc9600
tree3fa79d83a77118e8306fee75d4d4752a66deb38d
parent52c6c086421e73e0c920d84288116f9848878b32
Element next-line scopes may nest, so man_breakscope() may have to
break multiple element next-line scopes at the same time, similar to
what man_descope() already does for unconditional rewinding.

This fixes an assertion failure that tb@ found with afl(1), caused
by .SH .I .I .BI and similar sequences of macros without arguments.
regress/usr.bin/mandoc/man/B/Makefile
regress/usr.bin/mandoc/man/B/nest.in [new file with mode: 0644]
regress/usr.bin/mandoc/man/B/nest.out_ascii [new file with mode: 0644]
regress/usr.bin/mandoc/man/B/nest.out_lint [new file with mode: 0644]
usr.bin/mandoc/man.c