[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Fwd: [Patch] Fix multibyte key string conversion problem in 0.9.4.1



  AbiWord 0.9.4.1 裏面的 CJK 支援問題終於有解決了!
非常感謝 Yong LI <rigel863@yahoo.com> 大俠再次為大家解決問題。  :-)

  AbiSource 的 developer 已經把這個修正加入了,相信下一版的 AbiWord
不會再有這個問題。我稍後也會請 Debian developer Aaron Lehmann 加入這個
patch。  :-)

					東東

----- Forwarded message from Yong LI <rigel863@yahoo.com> -----

Date: Sun, 07 Oct 2001 23:42:44 -0700
From: Yong LI <rigel863@yahoo.com>
Subject: [Patch] Fix multibyte key string conversion problem in 0.9.4.1
To: patches@abisource.com
Cc: abiword-dev@abisource.com
Content-type: text/plain; charset=us-ascii; format=flowed

In the method ev_UnixKeyboard::keyPressEvent, a "UT_Mbtowc" object
is used to convert multibyte sequence to wchar. However the declaration
of this "UT_Mbtowc" object is placed inside the conversion loop, which
means for every byte to be converted a new "UT_Mbtowc" object is
constructed. This effectively disables the conversion of
multibyte-encoded characters which requires accumulation of multiple
bytes. One visible consequence of this problem is that input for all CJK
languages fail to work in 0.9.4.1.

A patch is attached.

regards,
rigel


diff -u abi.orig/src/af/ev/unix/ev_UnixKeyboard.cpp 
abi/src/af/ev/unix/ev_UnixKeyboard.cpp
--- abi.orig/src/af/ev/unix/ev_UnixKeyboard.cpp Mon Sep 10 09:53:44 2001
+++ abi/src/af/ev/unix/ev_UnixKeyboard.cpp  Sun Oct  7 15:04:38 2001
@@ -185,10 +185,10 @@
            }
            else
            {
+               UT_Mbtowc m;
                ucs=new UT_UCSChar[mLength];
                for(int i=0;i<mLength;++i)
                {
-                       UT_Mbtowc m;
                    wchar_t wc;
                    if(m.mbtowc(wc,mbs[i]))
                      ucs[uLength++]=wc;


----- End forwarded message -----

-- 
Anthony Fok Tung-Ling  霍東靈
ThizLinux Laboratory   <anthony@thizlinux.com> http://www.thizlinux.com/
Debian Chinese Project <foka@debian.org>       http://www.debian.org/intl/zh/
Come visit Our Lady of Victory Camp!           http://www.olvc.ab.ca/



Reply to: