aboutsummaryrefslogtreecommitdiff
path: root/libsylph/codeconv.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-10-19 04:58:23 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-10-19 04:58:23 +0000
commit55be571a623af3e4b731c72c1e7f6f834216e6a8 (patch)
tree2db438c0337f119cc22de4993c9efcca07598001 /libsylph/codeconv.c
parentd066fb9d80f9fd9d39b6a93bbb861e9390647caf (diff)
win32: fixes character corruption on printing when environment-dependent characters are used in win32.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1246 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'libsylph/codeconv.c')
-rw-r--r--libsylph/codeconv.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/libsylph/codeconv.c b/libsylph/codeconv.c
index dc071dad..c05a1db5 100644
--- a/libsylph/codeconv.c
+++ b/libsylph/codeconv.c
@@ -1400,12 +1400,20 @@ CodeConvFunc conv_get_code_conv_func(const gchar *src_encoding,
code_conv = conv_jistodisp;
else if (dest_charset == C_EUC_JP)
code_conv = conv_jistoeuc;
+ else if (dest_charset == C_SHIFT_JIS ||
+ dest_charset == C_CP932)
+ code_conv = conv_jistosjis;
else if (dest_charset == C_UTF_8)
code_conv = conv_jistoutf8;
break;
case C_SHIFT_JIS:
+ case C_CP932:
if (dest_charset == C_AUTO)
code_conv = conv_sjistodisp;
+ else if (dest_charset == C_ISO_2022_JP ||
+ dest_charset == C_ISO_2022_JP_2 ||
+ dest_charset == C_ISO_2022_JP_3)
+ code_conv = conv_sjistojis;
else if (dest_charset == C_EUC_JP)
code_conv = conv_sjistoeuc;
else if (dest_charset == C_UTF_8)
@@ -1428,6 +1436,9 @@ CodeConvFunc conv_get_code_conv_func(const gchar *src_encoding,
dest_charset == C_ISO_2022_JP_2 ||
dest_charset == C_ISO_2022_JP_3)
code_conv = conv_utf8tojis;
+ else if (dest_charset == C_SHIFT_JIS ||
+ dest_charset == C_CP932)
+ code_conv = conv_utf8tosjis;
break;
default:
break;