Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 1715 by [email protected]: Ctrl+Shift+U followed by 7 character causes big hang
http://code.google.com/p/ibus/issues/detail?id=1715

Press Ctrl+Shift+U, followed by 7 characters.

Notice that the current application, plus all other applications using IBUS input method completely stop accepting keypress. You can try to press Esc, Enter, Space and so on, you'd expect them to terminate the hext code, but instead they do nothing, the input method is stuck at entering the hex code.

This brings the system into an unusable state where probably some users wouldn't find a way out other than logging out (or even forcing a reboot).

There are a few actions, just as a keyboard layout change, that bring the system back to life, but it's hard to discover them.

The ibus_engine_simple_process_key_event() method bails out if the maximum length is already received, and does this even before cheching whether the current keypress is something that wouldn't make compose_buffer grow any longer (e.g. backspace, space, enter). It also forgets to reset compose_buffer or in_hex_sequence.

[On a slightly related note, I find it quite bad that non-hex characters are accepted. Especially Esc looks stupid in gnome-terminal. I believe that pressing Esc should cancel entering a hex code, and non-hex characters should be ignored - this is what plain Gtk+ does if $GTK_IM_MODULE is unset.]


OS (Linux distributions, UNIX or ...): Linux
Architecture (i386, x86_64): x86_64
IBus version: 1.5.5
Input method name and version: ibus 1.5.5
dbus version: 1.6.18


--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
--
You received this message because you are subscribed to the Google
Groups "ibus-devel" group.
iBus project web page: http://code.google.com/p/ibus/
iBus dev group: http://groups.google.com/group/ibus-devel?hl=en
--- You received this message because you are subscribed to the Google Groups "ibus-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

回复