Nux

Fcitx can't input word group more than 6 Chinese characters in Dash. Causes a crash if entering to many characters.

Bug #1112044 reported by Ma Jun on 2013-02-01
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Nux
Fix Released
Critical
Brandon Schaefer
2.0
Fix Committed
High
Brandon Schaefer
nux (Ubuntu)
Critical
Brandon Schaefer
Nominated for Precise by Timo Jyrinki

Bug Description

Fcitx(1:4.2.6.1-2) can't input word group more than 6 Chinese characters in Dash. I do the test in daily buid version of 13.04.

Related branches

yuyichao (yyc-1992) wrote :

I cannot see why it can possibly be dash specific.

What's input method are you using? If you are using google-pinyin, you may have this problem. It is not maintained anymore and you may want to use another one. See[1] (bold text).

[1] http://code.google.com/p/libgooglepinyin/

yuyichao (yyc-1992) wrote :

If it is indeed the case, than this is a bug in libgooglepinyin and it is a WONTFIX.

Ma Jun (maclin.jun) wrote :

I have tried google-pinyin and sunpinyin, both have the problem.

I input the same word group in other edit area, both are OK, so I relate the problem to Dash.

Hmm strange, I can confirm this. It is possible because nux has implement its own handling of XIMs, which is most likely where the bug is, so this is possible in both the Dash and Hud.

Changed in nux:
status: New → Confirmed
importance: Undecided → Medium
milestone: none → 4.0
Changed in nux:
assignee: nobody → Brandon Schaefer (brandontschaefer)
Changed in nux:
status: Confirmed → Triaged
Changed in nux (Ubuntu):
assignee: nobody → Brandon Schaefer (brandontschaefer)
importance: Undecided → Medium
status: New → Triaged
Changed in nux:
status: Triaged → In Progress
Changed in nux (Ubuntu):
status: Triaged → In Progress
Stephen M. Webb (bregma) on 2013-05-10
Changed in nux:
milestone: 4.0.0 → 4.0.1

Sadly this is a confirmed problem in nux, and actually is a much bigger problem then it looks. There is a char text[16] that is storing all the data coming in from the XIM, which you can imagine 6 CJK chars is to large to fit in a char[16].

What makes this problem really bad is if you enter in to many characters and cause a crash by overflowing that buffer....so this needs to be fixed ASAP.

Changed in nux:
importance: Medium → Critical
Changed in nux (Ubuntu):
importance: Medium → Critical
summary: - Fcitx can't input word group more than 6 Chinese characters in Dash
+ Fcitx can't input word group more than 6 Chinese characters in Dash.
+ Causes a crash if entering to many characters.

Also the stacktrace for the crash isn't very useful as it crashes on the XNextEvent when flushing the X server... but its caused by not having enough room to store the unicode in GraphicsDisplayX11.cpp when we do the XmbLookupString, then do a Memcpy(m_pEvent->text, buffer, num_char_stored); which is where the num_char_stored is greater then the sizeof m_pEvent->text. (which is also why you can't enter more then 6 CJK chars in fcitx).

PS Jenkins bot (ps-jenkins) wrote :

Fix committed into lp:nux at revision None, scheduled for release in nux, milestone 4.0.1

Changed in nux:
status: In Progress → Fix Committed
Changed in nux (Ubuntu):
status: In Progress → Fix Committed
Stephen M. Webb (bregma) on 2013-10-04
Changed in nux:
status: Fix Committed → Fix Released
Changed in nux (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers