diff options
author | Atsushi Eno <atsushieno@gmail.com> | 2016-04-21 21:08:23 +0300 |
---|---|---|
committer | Atsushi Eno <atsushieno@gmail.com> | 2016-04-21 21:08:23 +0300 |
commit | c641b329305dd8dcba29a6fdd66d9ef0cc16a704 (patch) | |
tree | f90c1d784057101c77e8f88cd95386b1f24b6f2c /mcs/class/I18N | |
parent | d5c88ebee2ecaed22ce9573febc2c7273e408a0b (diff) |
[I18N/CJK] iso-2022-jp GetChars() had some bogus conversion ranges.
Diffstat (limited to 'mcs/class/I18N')
-rw-r--r-- | mcs/class/I18N/CJK/ISO2022JP.cs | 2 | ||||
-rw-r--r-- | mcs/class/I18N/CJK/Test/texts/japanese-50221.txt | 1 | ||||
-rw-r--r-- | mcs/class/I18N/CJK/Test/texts/japanese-50222.txt | 1 | ||||
-rw-r--r-- | mcs/class/I18N/CJK/Test/texts/japanese-51932.txt | 1 | ||||
-rw-r--r-- | mcs/class/I18N/CJK/Test/texts/japanese-932.txt | 1 | ||||
-rw-r--r-- | mcs/class/I18N/CJK/Test/texts/japanese-utf8.txt | 1 |
6 files changed, 6 insertions, 1 deletions
diff --git a/mcs/class/I18N/CJK/ISO2022JP.cs b/mcs/class/I18N/CJK/ISO2022JP.cs index 753b2a36b14..3ace5230007 100644 --- a/mcs/class/I18N/CJK/ISO2022JP.cs +++ b/mcs/class/I18N/CJK/ISO2022JP.cs @@ -690,7 +690,7 @@ namespace I18N.CJK // am so lazy, so reusing jis2sjis int s1 = ((bytes [i] - 1) >> 1) + ((bytes [i] <= 0x5e) ? 0x71 : 0xb1); int s2 = bytes [i + 1] + (((bytes [i] & 1) != 0) ? 0x20 : 0x7e); - int v = (s1 - 0x81) * 0xBC; + int v = (s1 <= 0x9F ? (s1 - 0x81) : (s1 - 0xc1)) * 0xBC; v += s2 - 0x41; int ch = ToChar (v); diff --git a/mcs/class/I18N/CJK/Test/texts/japanese-50221.txt b/mcs/class/I18N/CJK/Test/texts/japanese-50221.txt index ccfe7f457eb..afe619503c1 100644 --- a/mcs/class/I18N/CJK/Test/texts/japanese-50221.txt +++ b/mcs/class/I18N/CJK/Test/texts/japanese-50221.txt @@ -1,4 +1,5 @@ $BF|K\8lJQ49$N(IC=B$B"+H>3Q(I6E$B$b(I!T/B9@^H(B +[$BlM(B] Mono Directions diff --git a/mcs/class/I18N/CJK/Test/texts/japanese-50222.txt b/mcs/class/I18N/CJK/Test/texts/japanese-50222.txt index da85bfa269d..fb2df61a841 100644 --- a/mcs/class/I18N/CJK/Test/texts/japanese-50222.txt +++ b/mcs/class/I18N/CJK/Test/texts/japanese-50222.txt @@ -1,4 +1,5 @@ $BF|K\8lJQ49$NC=B"+H>3Q6E$b!T/B9@^H(B +[$BlM(B] Mono Directions diff --git a/mcs/class/I18N/CJK/Test/texts/japanese-51932.txt b/mcs/class/I18N/CJK/Test/texts/japanese-51932.txt index c1f06116fbd..0fd82733278 100644 --- a/mcs/class/I18N/CJK/Test/texts/japanese-51932.txt +++ b/mcs/class/I18N/CJK/Test/texts/japanese-51932.txt @@ -1,4 +1,5 @@ 日本語変換のテスツ←半角カナも。ヤッツケダネ +[賤] Mono Directions diff --git a/mcs/class/I18N/CJK/Test/texts/japanese-932.txt b/mcs/class/I18N/CJK/Test/texts/japanese-932.txt index 596ca1c897f..21a41ba30e5 100644 --- a/mcs/class/I18N/CJK/Test/texts/japanese-932.txt +++ b/mcs/class/I18N/CJK/Test/texts/japanese-932.txt @@ -1,4 +1,5 @@ {銘渋p凝燹坏孫折 +[翹] Mono Directions diff --git a/mcs/class/I18N/CJK/Test/texts/japanese-utf8.txt b/mcs/class/I18N/CJK/Test/texts/japanese-utf8.txt index 3b8c4bdcae3..bfb79bf6098 100644 --- a/mcs/class/I18N/CJK/Test/texts/japanese-utf8.txt +++ b/mcs/class/I18N/CJK/Test/texts/japanese-utf8.txt @@ -1,4 +1,5 @@ 鏤炊ユ茯紊鐓鐔緒茹鐔駈鐔¥鐔鐓鐔刻鐓鐓 +[莖] Mono Directions |