ls is broken for non-C locales due to libxo

Andrey Chernov ache at freebsd.org
Wed Jun 17 16:35:52 UTC 2015


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

On 17.06.2015 16:58, Marcel Moolenaar wrote:
> 
>> On Jun 16, 2015, at 9:53 PM, Andrey Chernov <ache at FreeBSD.org>
>> wrote:
> 
>> Should be no any %FF, but single char in pre libxo ls or nothing
>> in post libxo one.
>> 
>> Use LANG=ru_RU.KOI8-R before touch command. It looks like you
>> create file with name "%FF" instead.
> 
> No difference:
> 
> fbsdvm64% env LANG=ru_RU.KOI8-R touch `env LANG=ru_RU.KOI8-R printf
> "\377"` fbsdvm64% ls -al total 8 -rw-r--r--   1 marcel  staff    0
> Jun 17 06:56 %FF drwxr-xr-x   3 marcel  staff  102 Jun 17 06:56 . 
> drwxr-xr-x  12 marcel  staff  408 Jun 17 06:55 ..

The original bug was fixed in r284494 by kan@

In any case, what you demonstrates is very strange and can be display
(console,xterm,etc.) bug or probably libxio bug, because ls alone
_never_ use %xx encoding, it should print '?' for invalid character or
just character itself for valid ones.

- -- 
http://ache.vniz.net/
-----BEGIN PGP SIGNATURE-----

iQEcBAEBCAAGBQJVgaHdAAoJEKUckv0MjfbKtUkIAMFtFY+o3CQ607jxr5sRkoFE
wh27gsUYA/F9FfLmzzcTI+iMPJI0Q72gMY/lgVlaekGSSehZ6EMOvgsRZsSHhLuC
b8bDL2ij2u+3eqlbhurpww6ZiKHLYWkBcO4ZKaoyZ0umXyij8sp0dC5WKXOdBqtR
4OGfr9SEuodnKqKEjBAakPBzKaefwHEVIpVMYV2K7ajFswRV3vfRk7n0CTz0K5lZ
qVXSrICOPJetGPtknZw9J/XQbbgnIQ9sKHE6LX0bBBVajSjrnJFtk7lSqGozYC8i
6GekMc3huR4IkV1JtxNR5OEH2GsoPiJwg/4XeO5ZeAHawrMtaznVBt5oVSAxaZc=
=mmEI
-----END PGP SIGNATURE-----


More information about the freebsd-current mailing list