skk input method not selectable if local dictionary file is corrupt
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
scim-skk (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: scim-skk
If the user's SKK dictionary file ~/.skk-scim-jisyo is corrupt then the skk-scim input method can throw an exception while trying to read it, which results in the input method not being selectable.
To reproduce:
* copy the attached (presumably corrupt) dictionary file to ~/.skk-scim-jisyo
* run scim-setup
* select IMEngine>Global Setup in the left pane
* SKK should be listed in the right pane in the 'Japanese' section, but it is not
I did some initial debugging on this, and what is happening is this:
* the GTK panel enumerates all the IMEngine modules (including SKK) in (scim's) scim_imengine_
* this eventually results in a call to skk_LTX_
* we instantiate an SKKFactory
* SKKFactory's constructor calls reload_config()
* part of this involves reloading the user dictionary via scim_skk:
* some problem with the dictionary file causes it to throw an exception
* this is caught by the code that was trying to instantiate the SKKFactory and treated as a failure
* the scim setup code therefore doesn't put SKK in to its list of working input methods
Corrupt dictionary files should be handled in some more graceful manner than "skk stops working completely and with no information about what has gone wrong" :-)
ProblemType: Bug
Architecture: i386
Date: Sun Dec 20 23:52:40 2009
DistroRelease: Ubuntu 9.10
Package: scim-skk 0.5.2-5.1
ProcEnviron:
LANGUAGE=en_GB:en
PATH=(custom, user)
LANG=en_GB.UTF-8
SHELL=/bin/bash
ProcVersionSign
SourcePackage: scim-skk
Uname: Linux 2.6.31-14-generic i686