Update of bug #68552 (group groff):
Status: In Progress => Fixed
Open/Closed: Open => Closed
_______________________________________________________
Follow-up Comment #6:
commit 12f546f99a2ccc27156d117b5e2b9918010244ab
Author: G. Branden Robinson <[email protected]>
Date: Sun Jul 26 00:21:00 2026 -0500
[groff]: Regression-test Savannah #68552.
* src/roff/groff/tests/error-grief-token-descriptions.sh: Do it.
* src/roff/groff/groff.am (groff_TESTS): Run test.
Test fails at this commit.
commit 0ebb2ba4af49199a99e391ff1f359219ede058d6
Author: G. Branden Robinson <[email protected]>
Date: Fri Jul 24 16:21:00 2026 -0500
[troff]: Fix Savannah #68552.
* src/roff/troff/input.cpp (token::description): Simplify population of
buffer describing a node token and avoid potentially overwriting a
heap-allocated buffer if that node's description is lengthy (as
"non-interpreted character nodes", input in *roff as `\a` and `\t`,
are). Discard stale code that uselessly performed a dead store of a
dummy node description; `describe_node()` zeroes out its destination
buffer so that became pointless a while back. Then, simply measure
the buffer as populated by `describe_node()` with strlen(3) and append
to it carefully with strncat(3), respecting `bufsz`.
Fixes <https://savannah.gnu.org/bugs/?68552>. Thanks to Bruno Haible
for the investigation and advice. I believe I introduced this problem
during the groff 1.24.0 development cycle in the course of my "node tree
dumping death march", but have not tracked it down to a specific commit.
See generally
<https://lists.gnu.org/archive/html/groff-commit/2025-03/index.html>.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?68552>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
