In a textarea on Firefox, if I toggling Japanese/English mode with hitting the hankaku/zenkaku key in a word registration bracket, uim stops responding, while the following lines are output on console infinitely: >>(symbol-value command) >>((symbol-value command) context key key-state) >>((symbol-value command) context key key-state) >>(prime-proc-call-command keymap context key key-state) >>(if (control-char? key) (im-commit-raw context) (let-internal (keymap) ((prime-keymap-get-keymap context key key-state)) (begin (prime-proc-call-command keymap context key key-state) (prime-update-key-press context)))) >>(and handler (apply handler handler-args)) >>(key-press-handler 1 (quote return) 0) I must kill Firefox to stop the output. I'm using uim 1.2.1.
I cannot reproduce it. Could you tell me how to reproduce the problem? And is the problem firefox specific? or applicable to other GTK+ application?
(In reply to comment #1) > I cannot reproduce it. Could you tell me how to reproduce the problem? I'm trying ... OK, let's register "潜るとは". It doesn't appear in the candidates, so moving to the end of candidates list starts the registration process. First, enter "潜る", then "とは". Just after that without any red underlines, press hankaku/zenkaku to toggle off Japanese. Then I see on console from which I launched firefox: ERROR: unbound variable (errobj prime-command-child-commit) *backtrace* >>(symbol-value command) >>((symbol-value command) context key key-state) >>((symbol-value command) context key key-state) >>(prime-proc-call-command keymap context key key-state) >>(if (control-char? key) (im-commit-raw context) (let-internal (keymap) ((prime-keymap-get-keymap context key key-state)) (begin (prime-proc-call-command keymap context key key-state) (prime-update-key-press context)))) >>(and handler (apply handler handler-args)) >>(key-press-handler 1 (quote return) 0) I haven't noticed this first message output just once on the previous reporting time. It means I misunderstood the true starting point of infinite loop. If I hit Enter key to commit, the loop starts. > And is the problem firefox specific? or applicable to other GTK+ application? I'm not sure.
Aha. It is needed to press commit key (enter key) after toggling to latin mode to reproduce the bug for me. Please apply following patch. Thanks for the report. Index: prime.scm =================================================================== --- prime.scm (revision 3972) +++ prime.scm (working copy) @@ -181,7 +181,7 @@ (prime-backspace-key? . prime-command-fund-backspace) (prime-delete-key? . prime-command-fund-delete) (prime-cancel-key? . prime-command-fund-cancel) - (prime-commit-key? . prime-command-child-commit) + (prime-commit-key? . prime-command-child-finish) (prime-go-left-key? . prime-command-fund-cursor-left) (prime-go-right-key? . prime-command-fund-cursor-right) (prime-go-left-edge-key? . prime-command-fund-cursor-left-edge)
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.