Bug 123388 - typing with el_GR.UTF-8 + OpenOffice + IIIMF produces garbage
Summary: typing with el_GR.UTF-8 + OpenOffice + IIIMF produces garbage
Status: CLOSED DUPLICATE of bug 124538
Alias: None
Product: Fedora
Classification: Fedora
Component: openoffice.org   
(Show other bugs)
Version: rawhide
Hardware: i386 Linux
Target Milestone: ---
Assignee: Yu Shao
QA Contact:
Keywords: i18n
Depends On:
TreeView+ depends on / blocked
Reported: 2004-05-17 21:12 UTC by Ariel T. Glenn
Modified: 2007-11-30 22:10 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2004-11-08 16:16:34 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

Description Ariel T. Glenn 2004-05-17 21:12:02 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.6)
Gecko/20040207 Firefox/0.8

Description of problem:
The system locale (and mine as a user) are el_GR.UTF-8.  If I run
OpenOffice and try to type greek characters, it produces garbage.  

For example: the keysym 0x7e1, or greek alpha, displays as the two
unicode characters ce and b1, instead of the one unicode character
03b1 (which has utf-8 encoding ce b1). 

It turns out that, in XmbLookupString, the input method is calling the
converter _XlcOpenConverter from compoundText to multiByte, which is
actually done in two parts: CompoundText to QCharSet and QCharSet to
multiByte.  The end result: a four byte sequence where the first two
bytes are c3 8e, the utf-8 representation of the ucs char "ce", and
the second two bytes are likewise the utf-8 representation of "b1"...
:-(   OpenOffice calls XvaOpenIM for input method setup, which calls
_XOpenIM from iiimf, which is the source of this problem.

Contrast this with xev, which *does* work properly; it calls XOpenIM
from Xlib, XmbLookupString uses the converters  _XlcOpenConverter from
UCSchar to char and then _XlcOpenConverter from charSet to multiByte,
and gives the appropriate 2 byte sequence back, i.e. ce b1.

I can work around this by setting the (undocumented!) environment
variable  USE_XOPENIM so that OpenOffice calls XOpenIM instead. 
Obviously this is a short-term solution.  I only found the env var by
looking at OO code; probably it's a temporary hack. Sorry I don't know
enough about the innards of iiimf to find the bug and provide a patch.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. system locale (or perhaps just yours) as el_GR.UTF-8
1.5 (make sure you don't have USE_XOPENIM set in env)
2. start OpenOffice
3. switch to greek keyboard, and type
4. look at resulting garbage

Comment 1 Akira TAGOH 2004-06-07 14:00:40 UTC
Does this problem still happen on FC2? and did you get the garbages
without ctrl+space for activating the input method?

Comment 2 Yu Shao 2004-06-08 06:49:54 UTC
This should be the bug on OpenOffice, not IIIMF.

Comment 3 Leon Ho 2004-06-10 05:21:25 UTC
Ariel, thanks for your report and your useful debug! We are really
appreicate it. OOo maintainer is looking into it now and he is getting
a fix very soon on rawhide. Merging this as duplicate with another bug.

*** This bug has been marked as a duplicate of 124538 ***

Comment 4 Caolan McNamara 2004-11-08 16:16:34 UTC
close as duplicate

Note You need to log in before you can comment on or make changes to this bug.