diff options
author | duerst <duerst@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-06-11 00:58:49 +0000 |
---|---|---|
committer | duerst <duerst@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2016-06-11 00:58:49 +0000 |
commit | 9fa8b80550d2af9309d2f493138c21969711bf60 (patch) | |
tree | 23b0e5ac10e36390afff906f6c3d9ea33acdc48f | |
parent | 02f7ad6237466d552c21f1cc78acd33febaa5ee6 (diff) | |
download | ruby-9fa8b80550d2af9309d2f493138c21969711bf60.tar.gz |
* enc/iso_8859_1.c: Revert to older version of code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | enc/iso_8859_1.c | 11 |
2 files changed, 10 insertions, 5 deletions
@@ -1,3 +1,7 @@ +Sat Jun 11 09:58:45 2016 Martin Duerst <duerst@it.aoyama.ac.jp> + + * enc/iso_8859_1.c: Revert to older version of code. + Sat Jun 11 09:46:17 2016 Martin Duerst <duerst@it.aoyama.ac.jp> * enc/iso_8859_1.c: Implement non-ASCII case mapping. diff --git a/enc/iso_8859_1.c b/enc/iso_8859_1.c index 5f0d3f91ab..0c8c095b7c 100644 --- a/enc/iso_8859_1.c +++ b/enc/iso_8859_1.c @@ -260,7 +260,7 @@ case_map (OnigCaseFoldType* flagP, const OnigUChar** pp, const OnigUChar* end, OnigUChar* to, OnigUChar* to_end, const struct OnigEncodingTypeST* enc) { - OnigCodePoint code, lower; + OnigCodePoint code; OnigUChar *to_start = to; OnigCaseFoldType flags = *flagP; @@ -278,10 +278,11 @@ case_map (OnigCaseFoldType* flagP, const OnigUChar** pp, code = 's'; } } - else if ((lower=ONIGENC_ISO_8859_1_TO_LOWER_CASE(code)) != code) - && (flags&ONIGENC_CASE_UPCASE)) { - flags |= ONIGENC_CASE_MODIFIED; - code = lower; + else if (code==0xAA || code==0xBA) ; + else if ((EncISO_8859_1_CtypeTable[code] & BIT_CTYPE_UPPER) + && (flags & (ONIGENC_CASE_DOWNCASE|ONIGENC_CASE_FOLD))) { + flags |= ONIGENC_CASE_MODIFIED; + code += 0x20; } else if ((EncISO_8859_1_CtypeTable[code]&BIT_CTYPE_LOWER) && (flags&ONIGENC_CASE_UPCASE)) { |