diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2017-02-10 16:20:34 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2017-02-10 16:20:34 +0000 |
commit | a68d897a41b530bdc20192b48d23b5c52edf457c (patch) | |
tree | 63e747725c89b05fd3af30871c0f16fb9bbc1587 /chars.c | |
parent | 33be0794e265a46ae95f2b46b2d4e7d6f60e3f66 (diff) | |
download | mandoc-a68d897a41b530bdc20192b48d23b5c52edf457c.tar.gz |
In the SYNOPSIS, .Nm blocks can get broken if one of their children
gets broken. In that case, mark them as BROKEN and ENDED and make
sure they get closed out together with the child.
Fixes tree corruption leeding to a NULL dereference found by tb@
with afl(1) in: .Sh SYNOPSIS .Bl .Oo .Nm .Bk .Oc .It (where .Bk is
the child and .Oo is the breaker).
A simpler form of the same corruption (without crash) is visible in:
.Sh SYNOPSIS .Ao .Nm .Bo .Ac .Bc text
where the text ended up inside the .Nm (child .Bo, breaker .Ao).
Diffstat (limited to 'chars.c')
0 files changed, 0 insertions, 0 deletions