Summary: | В некоторых случаях IGNORECASE работает не верно | ||||||
---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | Renat Sabitov <r_sabitov> | ||||
Component: | gawk | Assignee: | placeholder <placeholder> | ||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||
Severity: | major | ||||||
Priority: | P2 | CC: | glebfm, ldv, placeholder | ||||
Version: | unstable | ||||||
Hardware: | all | ||||||
OS: | Linux | ||||||
Attachments: |
|
Description
Renat Sabitov
2004-06-07 17:06:52 MSD
$ gawk 'BEGIN {IGNORECASE=1; if ("москва" ~ "МОСКВА") print 1; if ("МОСКВА" ~ "москва") print 2; if ("MOSCOW" ~ "moscow") print 3; if ("moscow" ~ "MOSCOW") print 4;}' 3 4 должно быть 1 2 3 4 Created attachment 426 [details]
патч решает проблему
патч устраняет проблемы IGNORECASE для 8-битных локалей. При старте awk таблица
преобразования заполняется значениями, соответствующими текущей локализации.
Спасибо за обнаруженную ошибку. upstream оказался не на высоте, прибив гвоздями latin1 и плюнув на другие языки и кодировки. Ругань уже пошла к текущиму мантейнеру. Спасибо за патч, но будем использовать его только в крайнем случае, может быть удастся излечить эту проблему на корню (правда Арнольд очень упёртый товарищ, поэтому придётся долго давить на него). подтвеждаю вроде как теперь работает в alt3. Но надеюсь, что upstream решит эту проблему более фундаментально. |