[bug #68570] [PATCH] [tbl] SEGV when table format description consists only of horizontal span descriptors

"G. Branden Robinson" <[email protected]> Sun, 26 Jul 2026 22:43:09 -0400 (EDT)
Newsgroups gmane.comp.printing.groff.bugs
Message-ID <[email protected]>
--8323329-1714636915-1785120189=:3740135
Content-Type: TEXT/plain; CHARSET=utf-8
Content-Transfer-Encoding: QUOTED-PRINTABLE
Content-Disposition: inline

Update of bug #68570 (group groff):=0A=0A                  Status:         =
    In Progress =3D> Fixed=0A             Open/Closed:                    O=
pen =3D> Closed=0A=0A    __________________________________________________=
_____=0A=0AFollow-up Comment #1:=0A=0A=0Acommit 4ec63c0d1fcbd383df1602078c6=
1e1f9eaba801d=0AAuthor: G. Branden Robinson <[email protected]>=
=0ADate:   Sun Jul 26 20:47:24 2026 -0500=0A=0A    [tbl]: Regression-test S=
avannah #68570.=0A    =0A    * src/preproc/tbl/tests/do-not-segv-on-span-on=
ly-table-description.sh:=0A      Do it.=0A    =0A    * src/preproc/tbl/tbl.=
am (tbl_TESTS): Run test.=0A    =0A    Test fails at this commit.=0A=0Acomm=
it 1bbb5ff2f10362979e1609ae5ad95ba2a9f57394=0AAuthor: G. Branden Robinson <=
[email protected]>=0ADate:   Sun Jul 26 20:48:40 2026 -0500=0A=
=0A    [tbl]: Fix Savannah #68570.=0A    =0A    * src/preproc/tbl/main.cpp =
(process_format): Fix invalid memory access=0A      (SEGV) when a table des=
cription consists of multiple rows of=0A      horizontal span column classi=
fiers (only).  When processing each row=0A      descriptor, keep track--wit=
h new local Boolean `is_first_column` of=0A      whether we're processing t=
he first column descriptor in that row.  If=0A      we encounter a horizont=
al span column classifier in the first column,=0A      throw an error diagn=
ostic instead of setting `got_format` true and=0A      assigning the "type"=
 `t` to `FORMAT_SPAN`.  Set the new Boolean false=0A      after successfull=
y interpreting one column descriptor in the row=0A      descriptor.  Reset =
the new Boolean to true when advancing to a new=0A      row description.=0A=
    =0A    Fixes <https://savannah.gnu.org/bugs/?68570>.  Problem appears t=
o date=0A    back to groff's birth.  Thanks to Elias Hasas for the report a=
nd an=0A    economical reproducer.=0A    =0A    ANNOUNCE: Acknowledge Elias=
.=0A=0A=0A=0A=0A    _______________________________________________________=
=0A=0AReply to this item at:=0A=0A  <https://savannah.gnu.org/bugs/?68570>=
=0A=0A_______________________________________________=0AMessage sent via Sa=
vannah=0Ahttps://savannah.gnu.org/=0A
--8323329-1714636915-1785120189=:3740135
Content-Type: APPLICATION/pgp-signature; name=signature.asc

-----BEGIN PGP SIGNATURE-----

iHUEABYIAB0WIQQk97aszIMMAvLLwm6qLAuaBUf3TgUCambFvQAKCRCqLAuaBUf3
TicBAQC7ZiD6glpwvLfKeZrPHS97s141wzI4HMn6aBmXA3QNCgD/XtnSFPrq7QsW
yF66Z3WQGtzY2jYBeZ+mekwiUF3lnwU=
=L5wd
-----END PGP SIGNATURE-----

--8323329-1714636915-1785120189=:3740135--