Bug 564268 - ibus-anthy crash with enabled global input method
Summary: ibus-anthy crash with enabled global input method
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: ibus-anthy
Version: 13
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: fujiwara
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-02-12 07:30 UTC by fujiwara
Modified: 2010-03-16 23:22 UTC (History)
4 users (show)

Fixed In Version: ibus-anthy-1.2.0.20100313-1.fc13
Clone Of:
Environment:
Last Closed: 2010-03-16 23:22:12 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description fujiwara 2010-02-12 07:30:21 UTC
ibus-anthy crashes with rawhide ibus.

To reproduce:
1. Invoke ibus-setup.
2. Enable "Share the same input method among all applications" in [Advanced] tab.
3. Invoke ibus-setup-anthy.
4. Choose [Clear] in "Behavior on Focus Out" pull down menu in [General] tab.
5. Enable IM with Control + Space on a focused text window.
6. Switch the fucus to another window.

Then ibus-anthy crashes:

Traceback (most recent call last):
  File "/usr/share/ibus-anthy/engine/engine.py", line 760, in __update
    self.__update_input_chars()
  File "/usr/share/ibus-anthy/engine/engine.py", line 676, in __update_input_chars
    attrs, cursor, not self.__preedit_ja_string.is_empty())
  File "/usr/share/ibus-anthy/engine/engine.py", line 298, in update_preedit
    self.update_preedit_text(ibus.Text(string, attrs), cursor_pos, visible)
  File "/usr/lib/python2.6/site-packages/ibus/engine.py", line 90, in update_preedit_text
    return self.__proxy.UpdatePreeditText(text, cursor_pos, visible)
AttributeError: 'NoneType' object has no attribute 'UpdatePreeditText'

Comment 1 fujiwara 2010-02-12 07:51:55 UTC
Upstreamed the fix.
http://github.com/fujiwarat/ibus-anthy/commit/9f67c6def39759acefd5b877226a1b407685047c

The problem is, ibus.EngineProxy.Destroy() is called and the proxy == NULL when the focus is switched but ibus-anthy calls focus_out() and __invalidate() calls gobject.idle_add(). The idle function tries to access the NULL object.

Comment 2 fujiwara 2010-03-12 04:19:23 UTC
Integrated fix.
http://koji.fedoraproject.org/koji/taskinfo?taskID=2048131

Comment 3 Fedora Update System 2010-03-12 04:25:21 UTC
ibus-anthy-1.2.0.20100312-1.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/ibus-anthy-1.2.0.20100312-1.fc13

Comment 4 Fedora Update System 2010-03-12 05:44:58 UTC
ibus-anthy-1.2.0.20100312.1-1.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/ibus-anthy-1.2.0.20100312.1-1.fc13

Comment 5 Fedora Update System 2010-03-13 01:57:04 UTC
ibus-anthy-1.2.0.20100313-1.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/ibus-anthy-1.2.0.20100313-1.fc13

Comment 6 Fedora Update System 2010-03-14 13:42:09 UTC
ibus-anthy-1.2.0.20100313-1.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update ibus-anthy'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/ibus-anthy-1.2.0.20100313-1.fc13

Comment 7 Fedora Update System 2010-03-16 23:22:07 UTC
ibus-anthy-1.2.0.20100313-1.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.


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