Re: ncurses 6.6-20260314 can no longer read xterm_256color extended attributes on redhat 8+ systems
Thomas Dickey <[email protected]> Tue, 21 Jul 2026 15:42:41 -0400
| Newsgroups | gmane.comp.lib.ncurses.bugs |
|---|---|
| Message-ID | <[email protected]> |
--TBtgjf1Wq4L5fBDm
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
On Tue, Jul 21, 2026 at 08:56:59PM +0200, Sven Joachim wrote:
> On 2026-07-20 17:56 -0400, Thomas Dickey wrote:
>=20
> > On Mon, Jul 20, 2026 at 10:22:10PM +0200, Sven Joachim wrote:
> >> On 2026-07-16 17:17 -0400, Thomas Dickey wrote:
> >>=20
> >> > On Thu, Jul 16, 2026 at 05:15:42PM -0400, Thomas Dickey wrote:
> >> >>=20
> >> >> Reading that, there's no compile changes (attaching diff, for conve=
nience)
> >> >
> >> > adding it...
> >>=20
> >> > Index: ncurses/tinfo/read_entry.c
> >> > Prereq: 1.175=20
> >> > --- ncurses-6.6-20260301+/ncurses/tinfo/read_entry.c 2025-01-11 23:5=
2:18.000000000 +0000
> >> > +++ ncurses-6.6-20260307/ncurses/tinfo/read_entry.c 2026-03-07 17:49=
:54.000000000 +0000
> >> > @@ -517,13 +517,8 @@
> >> > _nc_visbuf(ptr->Strings[i + STRCOUNT])));
> >> > }
> >> > TR(TRACE_DATABASE, ("Check table-size: %d/%d", check, ext_str_=
usage));
> >> > -#if 0
> >> > - /*
> >> > - * Phasing in a proper check will be done "later".
> >> > - */
> >> > if (check !=3D ext_str_usage)
> >> > returnDB(TGETENT_NO);
> >> > -#endif
> >> > }
> >> > =20
> >> > if (need) {
> >>=20
> >> I suspect it is this check which fails with the old terminfo files bui=
lt
> >> by tic 6.1, but have not tested that. Todd might want to revert this
> >> change and see if it helps.
> >
> > He replied off-list regarding the two .c changes, and I indicated this
> > was more likely.
> >
> > (I didn't happen to see how to reproduce the issue as described, otherw=
ise
> > I'd have made some change this weekend).
>=20
> I could reproduce the problem with the following steps in Debian
> testing/unstable:
>=20
> ,----
> | $ wget https://snapshot.debian.org/archive/debian/20180227T161438Z/pool=
/main/n/ncurses/ncurses-base_6.1%2B20180210-1_all.deb
> | $ dpkg-deb -x ncurses-base_6.1+20180210-1_all.deb /tmp/test
> | $ infocmp -x -A /tmp/test/lib/terminfo -B /usr/share/terminfo xterm xte=
rm
> | infocmp: error: no match in terminfo database for terminal type "xterm"
> `----
>=20
> Reverting the 20260307 change to ncurses/tinfo/read_entry.c fixes it.
>=20
> In the NEWS file there is the following entry:
>=20
> ,----
> | 20180331
> | + improve terminfo write/read by modifying the fourth item of the
> | extended header to denote the number of valid strings in the extended
> | string table (prompted by a comment in unibilium's sources).
> `----
>=20
> Perhaps you noticed at the time that the check breaks reading terminfo
> entries compiled by older tic versions, but forgot it eight years later
> when you enabled it?
perhaps (I'll revisit this and resolve it)
--=20
Thomas E. Dickey <[email protected]>
https://invisible-island.net
--TBtgjf1Wq4L5fBDm
Content-Type: application/pgp-signature; name="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQGzBAABCgAdFiEEGYgtkt2kxADCLA1WzCr0RyFnvgMFAmpfy60ACgkQzCr0RyFn
vgO4eQwAlAZ09Segg2oVY3+fFF+mW38uFjS214amDZspS01qzfHMmBbXoa4H6rps
JaFHuEolwB+UAMWf0RCowFWxAl2VCESM70hPxFiLDid0RfBt2HcONYNpWnCA6Tup
U/EyZkCgY8D9wiA+dajwWNWMShgEFhn43/luz+BjFQTWdtKAV1YMX2+sqK0N3rke
qAxZyTadKnCt9LJycfeNpl+RpMtAXdQCTUG3KFE76QV0xgflDz2XLfZKzGUHzi5R
qNMwGPXWzVvF4XhJm1nL6FRuSdMuYaQR2J6ctrzzK8aBTj7KYGsGtlruh5hpAGLr
zdMqOaF7w5PQVTHmzezqOvJe8773wX+oz/FkWXVdtkhi0QsD79dcG3QwnHhOy5M5
RRSOMEmqfxa8rbCY1v0zNfKxTOQN8rZh6GJ3Y+/H1DgamF8ZznJAeeizCaf98nPa
0pcRGc5sM6AuVKMt61azqiew/0kQ4jVICIKQIfKnRTL692+C7KX7fHuosa6GpZPe
TNXVu+E0
=uLMA
-----END PGP SIGNATURE-----
--TBtgjf1Wq4L5fBDm--