summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorduerst <duerst@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-06-11 00:58:49 +0000
committerduerst <duerst@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-06-11 00:58:49 +0000
commit9fa8b80550d2af9309d2f493138c21969711bf60 (patch)
tree23b0e5ac10e36390afff906f6c3d9ea33acdc48f
parent02f7ad6237466d552c21f1cc78acd33febaa5ee6 (diff)
* 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--ChangeLog4
-rw-r--r--enc/iso_8859_1.c11
2 files changed, 10 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index c30abd86ccc..922a704fce1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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 5f0d3f91ab0..0c8c095b7c0 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)) {