Fixing unicode detection

Rich Felker dalias at aerifal.cx
Sat Jul 6 05:20:13 UTC 2013


On Fri, Jul 05, 2013 at 10:01:38PM +0200, Denys Vlasenko wrote:
> On Wednesday 03 July 2013 08:35, Bernhard Reutner-Fischer wrote:
> > On 2 July 2013 17:47:51 Harald Becker <ralda at gmx.de> wrote:
> > > Hi Denys !
> > >
> > > >What are the chances that someone doesn't set $LANG, $LC_ALL,
> > > >but does set $LC_CTYPE?
> > >
> > > That's me ... I set all LC_ constants except LC_ALL. I need to
> > > set them separate as LC_ALL overwrite all and I only want German
> > > Locale (Numbers, style, etc.) but English text. Checking only for
> > > LC_ALL without checking for LC_CTYPE will break all my setups.
> > 
> > I am in the very same position.
> 
> Okay.
> I added $LC_CTYPE check.

Can you please also fix the fallback in reinit_unicode:

-	setlocale(LC_ALL, (LANG && LANG[0]) ? LANG : "C");
+	setlocale(LC_ALL, (LANG && LANG[0]) ? LANG : "");

This is necessary to solve the second case I care about (actually the
most important one to musl users) in my previous email. It does not
make any difference right now, but getting this fixed is important, as
the changes we will have to make for Austin Group interpretation for
issue #663 will cause a regression in busybox+musl UTF-8 support at a
later date if it's not fixed. My hope is that by the time we need to
make that change, busybox will have had the correct UTF-8 checking for
a long time, so that it's unlikely any users will experience
regressions.

Rich


More information about the busybox mailing list