Bug in our ru_RU.KOI8-R locale (with patch)?
Alexander Leidinger
Alexander at Leidinger.net
Wed Dec 1 05:40:39 PST 2004
Hi,
I got a report that our ru_RU.KOI8-R locale seems to be broken. Attached
is a test program (test.pl, tested with perl 5.8.2) and some test input
(test.txt) which is supposed to show the problem. I can't read any
kyrillic language, so I can't really confirm if the attached patch is the
right fix.
If you run the test program you should see something like this (strange
looking text maybe because of the webmailer I use):
---snip---
Match small (RegEx with i flag): 0
Match small (RegEx without i flag): 8
Match for normal (RegEx with i flag): 17
Match for normal (RegEx without i flag): 9
Case - Check for 'яѓјъшэ'
lc() => яѓјъшэ
uc() => ЯгиЪШЭ
lcfirst() => яѓјъшэ
ucfirst() => Яѓјъшэ
Case - Check for 'Яѓјъшэ'
lc() => яѓјъшэ
uc() => ЯгиЪШЭ
lcfirst() => яѓјъшэ
ucfirst() => Яѓјъшэ
---snip---
I'm told the "Case - Check" parts are correct with the patch, but not
without it (lc() -> lower case the entire string; uc() -> upper case the
entire string; lcfirst() -> lower case the first character; ...). Can
someone please confirm this?
If this is correct we've solved only a part of the problem. The other
part seems to be related to LC_COLLATE. "Match small" with the i flag
(case insensitive matching) shouldn't print 0 when "Match normal" with
the i flag doesn't print 0. Any ideas how to solve this?
If the patch isn't correct we still have a bug somwhere (please CC
perl at freebsd.org then). Why isn't perl able to do a case insensitive
match in the ru_RU.KOI8-R locale?
BTW.: this affects 4.x (problem noticed here), 5.x and -current (I've
tested the patch here).
Bye,
Alexander.
--
http://www.Leidinger.net/ Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org/ netchild @ FreeBSD.org : PGP ID = 72077137
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.pl
Type: application/octet-stream
Size: 1247 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20041201/b8b65fae/test.obj
-------------- next part --------------
ïóøêèí
Ïóøêèí
Test
Test
TEST
tEST
ïóøêèí
Ïóøêèí
Test
Test
TEST
tEST
ïóøêèí
ïóøêèí
ïóøêèí
ïóøêèí
Ïóøêèí
Ïóøêèí
Ïóøêèí
Ïóøêèí
Ïóøêèí
ïóøêèí
Ïóøêèí
Ïóøêèí
ïóøêèí
COUNT lower 8 upper 9
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mklocale:ru_RU.KOI8-R.diff
Type: application/octet-stream
Size: 1223 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20041201/b8b65fae/ru_RU.KOI8-R.obj
More information about the freebsd-current
mailing list