| 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, vt | ||||
| 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 решит эту проблему более фундаментально. |