summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--enc/gb18030.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 57560bbd7..dba2821d3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Jun 2 04:35:32 2008 NARUSE, Yui <naruse@ruby-lang.org>
+
+ * enc/gb18030.c (gb18030_code_to_mbc): add 0x80000000
+ for 4bytes character.
+
Mon Jun 2 03:52:04 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (set_arg0): reverted used variable definition.
diff --git a/enc/gb18030.c b/enc/gb18030.c
index f62a2394c..d58abf879 100644
--- a/enc/gb18030.c
+++ b/enc/gb18030.c
@@ -185,6 +185,9 @@ gb18030_mbc_to_code(const UChar* p, const UChar* end, OnigEncoding enc)
static int
gb18030_code_to_mbc(OnigCodePoint code, UChar *buf, OnigEncoding enc)
{
+ if ((code & 0xff000000) != 0) {
+ code |= 0x80000000;
+ }
return onigenc_mb4_code_to_mbc(enc, code, buf);
}