[Pkg-ime-devel] Bug#753611: urxvt also affected by likely the same problem

Marc Lehmann schmorp at schmorp.de
Sun Jan 18 11:35:40 UTC 2015

We (the rxvt-unicode developers) got a number of reports by (apparently
mostly) ubuntu users running into key reordering and freezes with urxvt, that
go away when ibus is killed.

The description sounds very much like the problem with freeplane, which is
why I wanted to add additional info here (upstream requires a google account
which I don't have).

So, here is a backtrace of a hanging urxvt process:

#0  0x00007ffff6452c50 in __poll_nocancel () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007ffff5a6cb72 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007ffff5a6e64f in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007ffff7180198 in _XReadEvents (dpy=dpy at entry=0x778b70) at ../../src/xcb_io.c:401
#4  0x00007ffff7168751 in XIfEvent (dpy=0x778b70, event=event at entry=0x7fffffffc4b0, predicate=predicate at entry=0x7ffff71ae790 <_CheckCMEvent>, arg=arg at entry=0x7d49c0 "\200eG\367\377\177") at ../../src/IfEvent.c:68
#5  0x00007ffff71aef24 in _XimXRead (im=0x7d49c0, recv_buf=0x7fffffffd0e0 "", buf_len=2048, ret_len=0x7fffffffc5dc) at ../../../../modules/im/ximcp/imTrX.c:476
#6  0x00007ffff71afb80 in _XimReadData (im=im at entry=0x7d49c0, len=len at entry=0x7fffffffc63e, buf=buf at entry=0x7fffffffd0e0 "", buf_size=buf_size at entry=2048) at ../../../../modules/im/ximcp/imTransR.c:165
#7  0x00007ffff71afe71 in _XimRead (im=im at entry=0x7d49c0, len=len at entry=0x7fffffffc6ee, buf=buf at entry=0x7fffffffd0e0 "", buf_size=buf_size at entry=2048, predicate=predicate at entry=0x7ffff719dc00 <_XimSetICValuesCheck>, arg=arg at entry=0x7efc40 " eG\367\377\177") at ../../../../modules/im/ximcp/imTransR.c:235
#8  0x00007ffff719e8a6 in _XimProtoSetICValues (xic=0x7efc40, arg=<optimized out>) at ../../../../modules/im/ximcp/imDefIc.c:778
#9  0x00007ffff718cb3d in XSetICValues (ic=0x7efc40) at ../../../src/xlibi18n/ICWrap.c:332
#10 0x000000000042a97f in rxvt_term::im_send_spot (this=this at entry=0x76b2d0) at main.C:1271
#11 0x000000000041df89 in rxvt_term::flush (this=0x76b2d0) at command.C:1009
#12 0x00000000004406f0 in ev_invoke_pending () at ./../libev/ev.c:3088
#13 0x000000000044191e in ev_run (flags=<optimized out>) at ./../libev/ev.c:3488
#14 0x0000000000416ec3 in main (argc=1, argv=0x7fffffffdbd8) at rxvt.C:38

as can be seen, urxvt hangs in a call to XSetICValues,
which causes xim to talk to ibus, but since it never gets
a response, it just hangs. (im_send_spot can be found at

random obervations, probably unrelated:

   * other users have reported problems when using the "tabbed" interface
     (which causes many windows and many xim contexts to be active in a
     single process).
   * it might be related to ctrl-up/down, as with the freeplane report,
     but one report had problems simply by generating lots
     of key events.

A user also reported a way to reproduce this problem, which we couldn't
verify, but it might help:


although reproducability is not guaranteed:

   I did some more testing on my own, and here's what I discovered:
   I can essentially only reproduce the bug using urxvt + xmonad as
   the window manager.  However,

       1. If I gksu urxvt (to any user besides the current user), the bug goes away
       2. If I nest xmonad inside Xephyr on lightdm, the bug goes away
       3. If I compile CVS HEAD rxvt-unicode without XIM support,
       the bug goes away

Hope this helps!

                The choice of a       Deliantra, the free code+content MORPG
      -----==-     _GNU_              http://www.deliantra.net
      ----==-- _       generation
      ---==---(_)__  __ ____  __      Marc Lehmann
      --==---/ / _ \/ // /\ \/ /      schmorp at schmorp.de
      -=====/_/_//_/\_,_/ /_/\_\

More information about the Pkg-ime-devel mailing list