NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: lib/59067: wctrans got error member.



The following reply was made to PR lib/59067; it has been noted by GNATS.

From: RVP <rvp%SDF.ORG@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: 
Subject: Re: lib/59067: wctrans got error member.
Date: Wed, 8 Jul 2026 22:48:54 +0000 (UTC)

 On Wed, 26 Feb 2025, RVP via gnats wrote:
 
 > > >Fix:
 > > https://github.com/NetBSD/src/blob/trunk/lib/libc/locale/iswctype_mb.c
 > >
 > > line 132 update to:
 > >
 > > return (wctrans_t)__UNCONST(&rl->rl_wctype[i]);
 > >
 > >   =====>
 > >
 > > return (wctrans_t)__UNCONST(&rl->rl_wctrans[i]);
 > >
 >
 > Yah, I think this is correct, but, there's one additional fix needed for this
 > to work in the "C"/"POSIX" locale too. So, we now have:
 >
 >
 > ---START patch---
 > diff -urN a/src/lib/libc/locale/iswctype_mb.c b/src/lib/libc/locale/iswctype_mb.c
 > --- a/src/lib/libc/locale/iswctype_mb.c	2024-06-07 22:20:47.236031995 +0000
 > +++ b/src/lib/libc/locale/iswctype_mb.c	2025-02-12 11:38:55.548531035 +0000
 > @@ -129,7 +129,7 @@
 >   	for (i = 0; i < _WCTRANS_NINDEXES; ++i) {
 >   		_DIAGASSERT(rl->rl_wctrans[i].te_name != NULL);
 >   		if (!strcmp(rl->rl_wctrans[i].te_name, charmap))
 > -			return (wctrans_t)__UNCONST(&rl->rl_wctype[i]);
 > +			return (wctrans_t)__UNCONST(&rl->rl_wctrans[i]);
 >   	}
 >   	return (wctrans_t)NULL;
 >   }
 > diff -urN a/src/lib/libc/locale/runetable.c b/src/lib/libc/locale/runetable.c
 > --- a/src/lib/libc/locale/runetable.c	2013-08-18 20:03:48.000000000 +0000
 > +++ b/src/lib/libc/locale/runetable.c	2025-02-12 11:45:11.254300802 +0000
 > @@ -320,11 +320,11 @@
 >       "646",
 >       &_citrus_ctype_default,
 >       {
 > -	{   "towlower",
 > +	{   "tolower",
 >   	    __UNCONST(&_DefaultRuneLocale.rl_maplower[0]),
 >   	    __UNCONST(&_DefaultRuneLocale.rl_maplower_ext)
 >   	},
 > -	{   "towupper",
 > +	{   "toupper",
 >   	    __UNCONST(&_DefaultRuneLocale.rl_mapupper[0]),
 >   	    __UNCONST(&_DefaultRuneLocale.rl_mapupper_ext)
 >   	},
 > ---END patch---
 >
 > Should be pulled up to -9, and -10.
 >
 
 This is an easy fix. Bump!
 
 -RVP
 



Home | Main Index | Thread Index | Old Index