calculator window freezes after asterisk is pressed

Bug #1576637 reported by Vsevolod Velichko
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
gnome-calculator (Ubuntu)
New
High
Unassigned
uim (Ubuntu)
New
Undecided
Unassigned

Bug Description

After upgrade to ubuntu 16.04 the problem appeared in calculator: if one uses keyboard for expression input, the calculator window freezes forever after asterisk ('*' — shift+8) is pressed. If the on-screen multiplication sign is pressed instead, the problem doesn't occur.

I tried with my default locale (Russian) and with the English one (LANG=C LC_ALL=en_US.utf8 LANGUAGE=en) as well, the problem remains in both cases. The calculator mode (basic/advanced/etc) also doesn't change the behavior.

If I interrupt the execution from the gdb at the moment of freeze, the stacktrace is slightly different from run to run:

%%%
(gdb) thread apply all where

Thread 4 (Thread 0x7fffe3df2700 (LWP 31184)):
#0 0x00007ffff5a93e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff621c31c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff621c42c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fffe3dfa28d in ?? () from /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4 0x00007ffff6242b45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff5d696fa in start_thread (arg=0x7fffe3df2700) at pthread_create.c:333
#6 0x00007ffff5a9fb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fffe8e1b700 (LWP 31183)):
#0 0x00007ffff5a93e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff621c31c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff621c6a2 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff681a906 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff6242b45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff5d696fa in start_thread (arg=0x7fffe8e1b700) at pthread_create.c:333
#6 0x00007ffff5a9fb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fffe961c700 (LWP 31182)):
#0 0x00007ffff5a93e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff621c31c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff621c42c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff621c469 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff6242b45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff5d696fa in start_thread (arg=0x7fffe961c700) at pthread_create.c:333
#6 0x00007ffff5a9fb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ffff7f0bb40 (LWP 31180)):
#0 0x00007ffff5a93e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff00cec62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2 0x00007ffff00d0617 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3 0x00007ffff00d0721 in xcb_wait_for_reply () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#4 0x00007ffff4692a47 in _XReply () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#5 0x00007ffff4678afd in XGetWindowProperty () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#6 0x00007ffff46c2627 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#7 0x00007ffff46c34d7 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#8 0x00007ffff46c37b1 in _XimRead () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#9 0x00007ffff46b5abd in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#10 0x00007ffff46b0e50 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#11 0x00007fffe25ddf82 in ?? () from /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so
#12 0x00007ffff73fdb53 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#13 0x00007ffff7504264 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#14 0x00007ffff7b8b18d in ?? () from /usr/lib/x86_64-linux-gnu/libgtksourceview-3.0.so.1
#15 0x00007ffff741d30c in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#16 0x00007ffff64f2eff in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00007ffff650556e in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007ffff650d7f9 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007ffff650e555 in g_signal_emit_by_name () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x0000000000415b7d in ?? ()
#21 0x00007ffff741d3f9 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#22 0x00007ffff64f3122 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff650d4b8 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff650e08f in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ffff755ae5c in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#26 0x00007ffff757aeeb in gtk_window_propagate_key_event () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#27 0x00007ffff757e36b in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#28 0x000000000041c467 in ?? ()
#29 0x00007ffff741d3f9 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#30 0x00007ffff64f31d4 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#31 0x00007ffff650d4b8 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#32 0x00007ffff650e08f in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#33 0x00007ffff755ae5c in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#34 0x00007ffff741a809 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#35 0x00007ffff741c51c in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#36 0x00007ffff6f89ba2 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#37 0x00007ffff621c127 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007ffff621c380 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007ffff621c42c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007ffff67e3ccd in g_application_run () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#41 0x000000000040ced5 in calculator_main ()
#42 0x00007ffff59b9830 in __libc_start_main (main=0x40bba0 <main>, argc=1, argv=0x7fffffffdc48, init=<optimized out>,
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdc38) at ../csu/libc-start.c:291
#43 0x000000000040bbe9 in _start ()
%%%

%%%
(gdb) thread apply all where

Thread 4 (Thread 0x7fffe3df2700 (LWP 31173)):
#0 0x00007ffff5a93e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff621c31c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff621c42c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fffe3dfa28d in ?? () from /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
#4 0x00007ffff6242b45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff5d696fa in start_thread (arg=0x7fffe3df2700) at pthread_create.c:333
#6 0x00007ffff5a9fb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fffe8e1b700 (LWP 31172)):
#0 0x00007ffff5a93e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff621c31c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff621c6a2 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff681a906 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4 0x00007ffff6242b45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff5d696fa in start_thread (arg=0x7fffe8e1b700) at pthread_create.c:333
#6 0x00007ffff5a9fb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fffe961c700 (LWP 31171)):
#0 0x00007ffff5a93e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1 0x00007ffff621c31c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007ffff621c42c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff621c469 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff6242b45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5 0x00007ffff5d696fa in start_thread (arg=0x7fffe961c700) at pthread_create.c:333
#6 0x00007ffff5a9fb5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ffff7f0bb40 (LWP 31165)):
#0 0x00007ffff467a064 in XIfEvent () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#1 0x00007ffff46c28a3 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#2 0x00007ffff46c34d7 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#3 0x00007ffff46c37b1 in _XimRead () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#4 0x00007ffff46b5abd in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#5 0x00007ffff46b0e50 in ?? () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#6 0x00007fffe25ddf82 in ?? () from /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-xim.so
#7 0x00007ffff73fdb53 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#8 0x00007ffff7504264 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#9 0x00007ffff7b8b18d in ?? () from /usr/lib/x86_64-linux-gnu/libgtksourceview-3.0.so.1
#10 0x00007ffff741d30c in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#11 0x00007ffff64f2eff in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#12 0x00007ffff650556e in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ffff650d7f9 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff650e555 in g_signal_emit_by_name () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x0000000000415b7d in ?? ()
#16 0x00007ffff741d3f9 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#17 0x00007ffff64f3122 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007ffff650d4b8 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007ffff650e08f in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x00007ffff755ae5c in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#21 0x00007ffff757aeeb in gtk_window_propagate_key_event () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#22 0x00007ffff757e36b in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#23 0x000000000041c467 in ?? ()
#24 0x00007ffff741d3f9 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#25 0x00007ffff64f31d4 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007ffff650d4b8 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007ffff650e08f in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#28 0x00007ffff755ae5c in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#29 0x00007ffff741a809 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#30 0x00007ffff741c51c in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#31 0x00007ffff6f89ba2 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#32 0x00007ffff621c127 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007ffff621c380 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007ffff621c42c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007ffff67e3ccd in g_application_run () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#36 0x000000000040ced5 in calculator_main ()
#37 0x00007ffff59b9830 in __libc_start_main (main=0x40bba0 <main>, argc=1, argv=0x7fffffffdc48, init=<optimized out>,
    fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffffffdc38) at ../csu/libc-start.c:291
#38 0x000000000040bbe9 in _start ()
%%%

System information:
0 ➜ LANGUAGE=en apt-cache policy gnome-calculator
gnome-calculator:
  Installed: 1:3.18.3-0ubuntu1
  Candidate: 1:3.18.3-0ubuntu1
  Version table:
 *** 1:3.18.3-0ubuntu1 500
        500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status
0 ➜ LANGUAGE=en lsb_release -rd
Description: Ubuntu 16.04 LTS
Release: 16.04
0 ➜ uname -a
Linux yaroot-46 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thank you for your bug report, that seems an issue with xim ... what keyboard layout and im framework do you use?

Changed in gnome-calculator (Ubuntu):
importance: Undecided → High
status: New → Incomplete
Revision history for this message
Vsevolod Velichko (torkvemada) wrote :

I use two layouts: English (US) and Russian. Reproduces on both..
Input method is uim.
Related envvars:

declare -x CLUTTER_IM_MODULE="xim"
declare -x GTK_IM_MODULE="xim"
declare -x IM_CONFIG_PHASE="1"
declare -x QT4_IM_MODULE="uim"
declare -x QT_IM_MODULE="xim"
declare -x XMODIFIERS="@im=uim"

Revision history for this message
Sebastien Bacher (seb128) wrote :

does it work if you use ibus instead of xim?

Revision history for this message
Vsevolod Velichko (torkvemada) wrote :

Sorry for delay.
If I start calculator as

0 ➜ GTK_IM_MODULE=ibus gnome-calculator

the problem disappears.

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for gnome-calculator (Ubuntu) because there has been no activity for 60 days.]

Changed in gnome-calculator (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Vsevolod Velichko (torkvemada) wrote :

Up?

Changed in gnome-calculator (Ubuntu):
status: Expired → New
Revision history for this message
Vsevolod Velichko (torkvemada) wrote :

After upgrade to 16.10, the problem appears not only in gnome-calculator, but also in nautilus and e.g. firefox save and print dialogs.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.