On Mon, 2016-10-10 at 18:50 -0500, Jason Crain wrote: > On Tue, Jun 14, 2016 at 06:58:06PM -0700, Diane Trout wrote: > > I launched evince running under wayland from gnome terminal and it > > immediately > > crashed with an > > assertion failed. > > > > (evince:4492): Gtk-WARNING **: Theme parsing error: <data>:56:20: > > The 'gtk-key- > > bindings' property has been renamed to '-gtk-key-bindings' > > [New Thread 0x7f50825f6700 (LWP 4500)] > > ** > > Gdk:ERROR:/build/gtk+3.0-UYMeaD/gtk+3.0- > > 3.20.6/./gdk/wayland/gdkdisplay- > > wayland.c:827:_gdk_wayland_display_get_scaled_cursor_theme: > > assertion failed: > > (wayland_display->cursor_theme_name) > > > > Program received signal SIGABRT, Aborted. > > > I haven't been able to reproduce this. Do you still see this problem > under more recent versions of gtk and evince? Do you have some > cursor > theme enabled and does the problem stop if you disable the cursor > theme? > Does it only happen under wayland and not xorg? >
It certainly only happens under wayland, and possibly only with the dark theme. I think it does work under X. I managed to get a stack trace (gdb) (gdb) (gdb) (gdb) bt full #0 0x00007ffaec41dfdf in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58 set = {__val = {0, 0, 0, 0, 0, 140715694469232, 140715694474080, 140715713740000, 140727320157392, 140715720592191, 188, 140715735165396, 5, 0, 2064, 140715682110936}} pid = <optimized out> tid = <optimized out> #1 0x00007ffaec41f40a in __GI_abort () at abort.c:89 save_stage = 2 act = {__sigaction_handler = {sa_handler = 0xbc, sa_sigaction = 0xbc}, sa_mask = {__val = {240, 3, 219043332109, 0, 0, 472446402651, 0, 0, 140715685853952, 140715685854040, 0, 140715685853952, 336, 208, 94377005673952, 188}}, sa_flags = -319044768, sa_restorer = 0x55d5dbe5ede0} sigs = {__val = {32, 0 <repeats 15 times>}} #2 0x00007ffaecd1b4d5 in g_assertion_message (domain=domain@entry=0x7f faee1f520e "Gdk", file=file@entry=0x7ffaee21b828 "/build/gtk+3.0- dN7rjx/gtk+3.0-3.22.1/./gdk/wayland/gdkdisplay-wayland.c", line=line@en try=1012, func=func@entry=0x7ffaee21bce0 <__func__.65775> "_gdk_wayland_display_get_scaled_cursor_theme", message=message@entry=0 x55d5dbe5bfc0 "assertion failed: (display_wayland->cursor_theme_name)") at ././glib/gtestutils.c:2429 lstr = "1012\000\177\000\000\000\246\375\256\274\301sx\000\000\000\000\000\000 \000\000h\271!\356\372\177\000" s = 0x55d5dbe5ede0 "p\357\345\333\325U" #3 0x00007ffaecd1b56a in g_assertion_message_expr (domain=domain@entry =0x7ffaee1f520e "Gdk", file=file@entry=0x7ffaee21b828 "/build/gtk+3.0- dN7rjx/gtk+3.0-3.22.1/./gdk/wayland/gdkdisplay-wayland.c", line=line@en try=1012, func=func@entry=0x7ffaee21bce0 <__func__.65775> "_gdk_wayland_display_get_scaled_cursor_theme", expr=expr@entry=0x7ffae e21b968 "display_wayland->cursor_theme_name") at ././glib/gtestutils.c:2452 s = 0x55d5dbe5bfc0 "assertion failed: (display_wayland- >cursor_theme_name)" #4 0x00007ffaee1e80d6 in _gdk_wayland_display_get_scaled_cursor_theme (display_wayland=display_wayland@entry=0x55d5db8c9040 [GdkWaylandDisplay], scale=<optimized out>) at ././gdk/wayland/gdkdisplay-wayland.c:1012 theme = <optimized out> __func__ = "_gdk_wayland_display_get_scaled_cursor_theme" #5 0x00007ffaee1dd27a in _gdk_wayland_cursor_update (display_wayland=d isplay_wayland@entry=0x55d5db8c9040 [GdkWaylandDisplay], cursor=cursor@ entry=0x55d5dbe59920 [GdkWaylandCursor]) at ././gdk/wayland/gdkcursor-wayland.c:152 c = <optimized out> theme = <optimized out> __func__ = "_gdk_wayland_cursor_update" #6 0x00007ffaee1dd4e9 in _gdk_wayland_display_get_cursor_for_name_with_scale (display=0x55d5db8c9040 [GdkWaylandDisplay], name=0x7ffaee8a4b3f "nw- resize", scale=1) at ././gdk/wayland/gdkcursor-wayland.c:355 private = <optimized out> ---Type <return> to continue, or q <return> to quit--- display_wayland = 0x55d5db8c9040 [GdkWaylandDisplay] scale = 1 name = 0x7ffaee8a4b3f "nw-resize" display = 0x55d5db8c9040 [GdkWaylandDisplay] private = <optimized out> display_wayland = 0x55d5db8c9040 [GdkWaylandDisplay] #7 0x00007ffaee7e7f63 in gtk_window_realize (widget=0x55d5dba12ef0 [EvWindow]) at ././gtk/gtkwindow.c:7336 cursor = {0x7ffaee8a4b3f "nw-resize", 0x7ffaee8a4b61 "n-resize", 0x7ffaee8a4b6a "ne-resize", 0x7ffaee8a4b40 "w-resize", 0x7ffaee8a4b6b "e-resize", 0x7ffaee8a4b74 "sw-resize", 0x7ffaee8a4b7e "s-resize", 0x7ffaee8a4b87 "se-resize"} allocation = {x = 0, y = 0, width = 652, height = 699} child_allocation = {x = 4097, y = 0, width = 1, height = 2020852156} window = 0x55d5dba12ef0 [EvWindow] parent_window = <optimized out> gdk_window = 0x55d5dbcc6c80 [GdkWaylandWindow] attributes = {title = 0x55d5db95ebe0 "Document Viewer", event_mask = 256, x = 0, y = 0, width = 1, height = 1, wclass = GDK_INPUT_ONLY, visual = 0x55d5db8c38c0 [GdkWaylandVisual], window_type = GDK_WINDOW_CHILD, cursor = 0xed20f660, wmclass_name = 0x55d5db8e38d0 "evince", wmclass_class = 0x55d5db8e2240 "Evince", override_redirect = 0, type_hint = GDK_WINDOW_TYPE_HINT_NORMAL} window_border = {left = 1824, right = -9332, top = 21973, bottom = 0} attributes_mask = 16 priv = 0x55d5dba12c90 i = <optimized out> link = <optimized out> __func__ = "gtk_window_realize" #8 0x00007ffaee55fd3f in gtk_application_window_real_realize (widget=0x55d5dba12ef0 [EvWindow]) at ././gtk/gtkapplicationwindow.c:678 window = 0x55d5dba12ef0 [EvWindow] settings = 0x55d5db8f7ae0 [GtkSettings] #12 0x00007ffaecfe7faf in <emit signal ??? on instance 0x55d5dba12ef0 [EvWindow]> (instance=instance@entry=0x55d5dba12ef0, signal_id=<optimized out>, detail=detail@entry=0) at ././gobject/gsignal.c:3447 var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7ffda1eda350, reg_save_area = 0x7ffda1eda290}} #9 0x00007ffaecfccf75 in g_closure_invoke (closure=closure@entry=0 x55d5db8fbab0, return_value=return_value@entry=0x0, n_param_values=1, p aram_values=param_values@entry=0x7ffda1eda0c0, invocation_hint=invocati on_hint@entry=0x7ffda1eda040) at ././gobject/gclosure.c:804 ---Type <return> to continue, or q <return> to quit--- marshal = <optimized out> marshal_data = <optimized out> in_marshal = 0 real_closure = 0x55d5db8fba90 __func__ = "g_closure_invoke" #10 0x00007ffaecfde95c in signal_emit_unlocked_R (node=node@entry=0 x55d5db8f4c10, detail=detail@entry=0, instance=instance@entry=0x55d5dba 12ef0, emission_return=emission_return@entry=0x0, instance_and_params=i nstance_and_params@entry=0x7ffda1eda0c0) at ././gobject/gsignal.c:3565 accumulator = 0x0 emission = {next = 0x0, instance = 0x55d5dba12ef0, ihint = {signal_id = 54, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 94377001107504} handler_list = <optimized out> return_accu = 0x0 accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} signal_id = 54 max_sequential_handler_number = 3337 return_value_altered = <optimized out> #11 0x00007ffaecfe7bcc in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, var_args=var_a rgs@entry=0x7ffda1eda270) at ././gobject/gsignal.c:3391 instance_and_params = 0x7ffda1eda0c0 signal_return_type = <optimized out> param_values = 0x7ffda1eda0d8 i = <optimized out> n_params = <optimized out> __func__ = "g_signal_emit_valist" #13 0x00007ffaee7d8704 in gtk_widget_realize (widget=0x55d5dba12ef0 [EvWindow]) at ././gtk/gtkwidget.c:5454 priv = 0x55d5dba12e00 region = <optimized out> __func__ = "gtk_widget_realize" #14 0x000055d5db0d536b in () #15 0x000055d5db0d607f in () #16 0x000055d5db0d6168 in () #17 0x00007ffaed29a4e3 in g_task_return_now (task=0x7ffae0017b50 [GTask]) at ././gio/gtask.c:1121 #18 0x00007ffaed29ab96 in g_task_return (task=0x7ffae0017b50 [GTask], type=<optimized out>) at ././gio/gtask.c:1179 ---Type <return> to continue, or q <return> to quit--- source = 0x7ffad0004060 #19 0x00007ffaed2cd68a in g_dbus_connection_call_done (source=<optimized out>, result=0x7ffae00178e0, user_data=0x7ffae0017b50) at ././gio/gdbusconnection.c:5708 connection = <optimized out> task = 0x7ffae0017b50 [GTask] state = 0x55d5dba0c4a0 error = 0x0 reply = 0x55d5db950e30 [GDBusMessage] value = <optimized out> #20 0x00007ffaed29a4e3 in g_task_return_now (task=0x7ffae00178e0 [GTask]) at ././gio/gtask.c:1121 #21 0x00007ffaed29a519 in complete_in_idle_cb (task=0x7ffae00178e0) at ././gio/gtask.c:1135 #22 0x00007ffaeccf468a in g_main_context_dispatch (context=0x55d5db8c1e00) at ././glib/gmain.c:3201 dispatch = 0x7ffaeccf10d0 <g_idle_dispatch> prev_source = 0x0 was_in_call = 0 user_data = 0x7ffae00178e0 callback = 0x7ffaed29a510 <complete_in_idle_cb> cb_funcs = <optimized out> cb_data = 0x7ffad000b370 need_destroy = <optimized out> source = 0x7ffad0004060 current = 0x55d5db923830 i = 0 #23 0x00007ffaeccf468a in g_main_context_dispatch (context=context@entr y=0x55d5db8c1e00) at ././glib/gmain.c:3854 #24 0x00007ffaeccf4a40 in g_main_context_iterate (context=context@entry =0x55d5db8c1e00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ././glib/gmain.c:3927 max_priority = 2147483647 timeout = 16255 some_ready = 1 nfds = 3 allocated_nfds = 3 fds = <optimized out> #25 0x00007ffaeccf4aec in g_main_context_iteration (context=context@ent ry=0x55d5db8c1e00, may_block=may_block@entry=1) at ././glib/gmain.c:3988 retval = <optimized out> #26 0x00007ffaed2af70d in g_application_run (application=0x55d5db996240 [EvApplication], argc=0, argv=0x0) at ././gio/gapplication.c:2381 arguments = 0x55d5db9bea90 ---Type <return> to continue, or q <return> to quit--- status = 0 context = 0x55d5db8c1e00 acquired_context = <optimized out> __func__ = "g_application_run" #27 0x000055d5db0d2a7b in () #28 0x00007ffaec40b2b1 in __libc_start_main (main= 0x55d5db0d25c0, argc=2, argv=0x7ffda1eda8d8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffda1eda8c8) at ../csu/libc-start.c:291 result = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -1000870195246012261, 94376991468416, 140727320160464, 0, 0, -6463575691971139429, -6466501122832471909}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x7ffda1eda8f0, 0x7ffaef8a0168}, data = {prev = 0x0, cleanup = 0x0, canceltype = -1578260240}}} not_first_call = <optimized out> #29 0x000055d5db0d2baa in () (gdb) (gdb)