desktop-packages team mailing list archive
-
desktop-packages team
-
Mailing list archive
-
Message #72942
[Bug 1046805] Re: X IO Error : Using g_idle_add_full inside ibus_im_context_focus_in instead of gdk_threads_add_idle_full
Status changed to 'Confirmed' because the bug affects multiple users.
** Changed in: ibus (Ubuntu)
Status: New => Confirmed
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to ibus in Ubuntu.
https://bugs.launchpad.net/bugs/1046805
Title:
X IO Error : Using g_idle_add_full inside ibus_im_context_focus_in
instead of gdk_threads_add_idle_full
Status in “ibus” package in Ubuntu:
Confirmed
Bug description:
This is a bug in ibus-gtk2 version 1.4, libray /usr/lib/x86_64-linux-
gnu/gtk-2.0/2.10.0/immodules/im-ibus.so is in Ubuntu 12.04.
It causes "random" X IO errors , because it is a multithreading bug.
I reported it already to the ibus project at
http://code.google.com/p/ibus/issues/detail?id=1505&thanks=1505&ts=1346933625, but it is a show stopper for us so we want a fast fix.
ibus_im_context_focus_in in ibus/client/gtk2/ibusimcontext.c uses
g_idle_add_full with a callback that call GDK functions, so it call
them without the GDK lock.
It should use instead gdk_threads_add_idle_full to make the callback
run with a lock.
Got broken by this commit
https://github.com/ibus/ibus/commit/279ee5d5b3697b427cc22cd99a55f4e611318e25#client/gtk2/ibusimcontext.c
Broken in ibus-gtk2 1.4, still ok in 1.3.
======== backtrace
Breakpoint 1, 0x00000040000b6094 in ?? ()
(gdb) where
#0 0x00000040000b6094 in ?? ()
#1 0x00007ffff569841e in _XIOError ()
from /usr/lib/x86_64-linux-gnu/libX11.so.6
#2 0x00007ffff569638b in _XReply () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#3 0x00007ffff5693407 in XTranslateCoordinates ()
from /usr/lib/x86_64-linux-gnu/libX11.so.6
#4 0x00007ffff5c02b2d in ?? ()
from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#5 0x00007fffd8968caf in ?? ()
from /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ibus.so
#6 0x00007ffff6910d53 in g_main_context_dispatch ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#7 0x00007ffff69110a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8 0x00007ffff691149a in g_main_loop_run ()
from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9 0x00000040000503ca in ?? ()
#10 0x0000000000000000 in ?? ()
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ibus/+bug/1046805/+subscriptions