Closed Bug 169039 Opened 23 years ago Closed 22 years ago

Text widgets append duplicate character in ko_KR locale

Categories

(Core :: Internationalization, defect)

Other
AIX
defect
Not set
critical

Tracking

()

RESOLVED FIXED

People

(Reporter: pkwarren, Assigned: pkwarren)

Details

(Keywords: intl)

Attachments

(2 files)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826 Build Identifier: On AIX, when the focus is lost on a text widget while the browser is running in the Korean locale (ko_KR or KO_KR), the last typed character in that widget is duplicated. Reproducible: Always Steps to Reproduce: 1. Start Mozilla in the Korean locale: LANG=ko_KR ./mozilla 2. Enter the URL "http://www.mozilla.org" in the address bar. 3. Double click on some text on the page after it loads, to remove focus from the address bar. Actual Results: An additional 'g' is appended to the address bar, so it now reads: "http://www.mozilla.orgg". Expected Results: No additional characters should be added to the address bar when its focus changes. This is happening with all text widgets used in Mozilla, including <INPUT> form elements.
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: other → AIX
This started happening after applying the fix for Bug 157394. I don't believe there is anything specific about that fix that caused this regression, but rather it fixed XIM in certain locales, and caused this problem (which had been hidden before) to start showing up.
This attachment is a copy of the stack trace as the additional character is inserted into the address bar. I believe the important line is the following: nsWindow.ResetInputState()(0x215c5dd8), line 3978 in "nsWindow.cpp" ResetInputState calls nsIMEGtkIC::ResetIC, which makes a call to XmbResetIC. For some reason, the last character typed remains in the preedit string, and is returned by the XmbResetIC call. This character is then propagated back to the text widget's nsPlaintextEditor class and appended to the end of the widget. While examining the nsIMEGtkIC::ResetIC function, I also noticed that we are not calling XFree on the string returned from XmbResetIC, as recommended here: http://www.xfree86.org/current/Xutf8ResetIC.3.html This is just a small nitpick, but it should be fixed to prevent a resource leak.
Attachment #99430 - Attachment is patch: false
Keywords: intl
QA Contact: ruixu → kasumi
Reassigning bug to me.
Assignee: yokoyama → pkw
This turned out to be a problem in the Korean input method for AIX. I would like to keep this bug open until we have a fix for users to download. In addition, I will be posting a patch to fix the leak in nsGtkIMEHelper.cpp.
The fixes for this problem have been available for some time. Here is a link to the fixes for each level of AIX: AIX 4.3: http://techsupport.services.ibm.com/rs6k/fixdb.html (APAR IY35400) AIX 5.1: https://techsupport.services.ibm.com/server/aix.fdc (APAR IY35342) AIX 5.2: https://techsupport.services.ibm.com/server/aix.fdc (APAR IY35401)
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: