aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--ext/win32ole/win32ole.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index fd9eccb232..99de2cbd46 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Oct 16 11:10:55 2010 Masaki Suketa <masaki.suketa@nifty.ne.jp>
+
+ * ext/win32ole/win32ole.c (ole_encoding2cp): set codepage 20936
+ according to GB2312. [Bug #3937] [ruby-core:32758]
+
Sat Oct 16 10:54:57 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in (CPP): already used in .c.i rule.
diff --git a/ext/win32ole/win32ole.c b/ext/win32ole/win32ole.c
index 4649da711a..80662579f6 100644
--- a/ext/win32ole/win32ole.c
+++ b/ext/win32ole/win32ole.c
@@ -143,7 +143,7 @@ const IID IID_IMultiLanguage2 = {0xDCCFC164, 0x2B38, 0x11d2, {0xB7, 0xEC, 0x00,
#define WC2VSTR(x) ole_wc2vstr((x), TRUE)
-#define WIN32OLE_VERSION "1.5.2"
+#define WIN32OLE_VERSION "1.5.3"
typedef HRESULT (STDAPICALLTYPE FNCOCREATEINSTANCEEX)
(REFCLSID, IUnknown*, DWORD, COSERVERINFO*, DWORD, MULTI_QI*);
@@ -868,7 +868,7 @@ static UINT ole_encoding2cp(rb_encoding *enc)
ENC_MACHING_CP(enc, "EUC-KR", 51949);
ENC_MACHING_CP(enc, "EUC-TW", 51950);
ENC_MACHING_CP(enc, "GB18030", 54936);
- ENC_MACHING_CP(enc, "GB2312", 51936);
+ ENC_MACHING_CP(enc, "GB2312", 20936);
ENC_MACHING_CP(enc, "GBK", 936);
ENC_MACHING_CP(enc, "IBM437", 437);
ENC_MACHING_CP(enc, "IBM737", 737);