[GNC] GTK Inspector blowing up on Mint 20 (was Re: help increasing size of font in GnuCash?)

Adrien Monteleone adrien.monteleone at lusfiber.net
Wed Aug 19 02:51:54 EDT 2020


Hmm.. There are 57 packages on Mint that match `gtk-dbg`, but none of 
them seem terribly relevant. (all are specific to an app, save two for XDG)

Here's what I received from `bt full` after triggering the crash per 
your correct syntax with just gnucash-dbgsym (odd that "raise.c: No such 
file or directory" is):



~$ gdb /usr/bin/gnucash
GNU gdb (Ubuntu 9.1-0ubuntu1) 9.1
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later 
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
     <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/gnucash...
Reading symbols from 
/usr/lib/debug/.build-id/42/638fb6341ad63746b4230ca74860e12b292c0c.debug...
(gdb) set env GTK_DEBUG=interactive
(gdb) run
Starting program: /usr/bin/gnucash
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffed067700 (LWP 2479)]
[New Thread 0x7fffec866700 (LWP 2480)]
[New Thread 0x7fffdabe8700 (LWP 2481)]
[New Thread 0x7fffd9744700 (LWP 2485)]
[New Thread 0x7fffd3fff700 (LWP 2486)]
[Detaching after fork from child process 2487]
Found Finance::Quote version 1.49.
**
Gdk:ERROR:../../../../gdk/gdkwindow.c:6530:gdk_window_set_cursor_internal: 
assertion failed: (!cursor || gdk_window_get_display (window) == 
gdk_cursor_get_display (cursor))
Bail out! 
Gdk:ERROR:../../../../gdk/gdkwindow.c:6530:gdk_window_set_cursor_internal: 
assertion failed: (!cursor || gdk_window_get_display (window) == 
gdk_cursor_get_display (cursor))

Thread 1 "gnucash" received signal SIGABRT, Aborted.
__GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
50	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt full
#0  __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
         set = {__val = {0, 93825030315712, 183, 183, 140737335982240, 
140737334564986, 0, 140737334590460, 93825030681264, 140737335978976, 
93825030315712, 140737335978880, 2048, 140737335978880, 2064, 129}}
         pid = <optimized out>
         tid = <optimized out>
         ret = <optimized out>
#1  0x00007ffff6ce8859 in __GI_abort () at abort.c:79
         save_stage = 1
         act = {__sigaction_handler = {sa_handler = 0x0, sa_sigaction = 
0x0}, sa_mask = {__val = {140737350771811, 93823560581168, 
140733193388032, 0, 172, 93825027151680, 140737350977842, 
140737351000287, 140736481722368,
               93825027151680, 0, 0, 8079864975479015424, 
140737332476277, 140737351491040, 93825027151680}}, sa_flags = 173, 
sa_restorer = 0x7fffffffd850}
         sigs = {__val = {32, 0 <repeats 15 times>}}
#2  0x00007ffff7c6fb63 in ?? () from 
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#3  0x00007ffff7cccb4f in g_assertion_message_expr () from 
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#4  0x00007ffff6ae3433 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
No symbol table info available.
#5  0x00007ffff6ae542b in gdk_window_set_cursor () from 
/usr/lib/x86_64-linux-gnu/libgdk-3.so.0
No symbol table info available.
#6  0x00007ffff7b79ab0 in gnc_ui_set_cursor (win=0x5555560623f0, 
type=<optimized out>, update_now=1) at ./gnucash/gnome-utils/cursors.c:55
         cursor = 0x555557a07a80
#7  0x00007ffff7b79b8e in gnc_set_busy_cursor (w=0x555555970510, 
update_now=1) at ./gnucash/gnome-utils/cursors.c:94
         containerstop = 0x555555797180
         node = 0x555555797180
#8  0x00007ffff7baeebf in gnc_post_file_open (parent=0x5555559e94c0, 
filename=0x555557909a00 "/home/obi-wan/test.gnucash", is_readonly=0) at 
./gnucash/gnome-utils/gnc-file.c:723
         current_session = <optimized out>
         new_session = <optimized out>
         new_book = <optimized out>
         invalid_account_names = <optimized out>
         uh_oh = 0
         newfile = 0x5555578f53f0 "file:///home/obi-wan/test.gnucash"
         io_err = <optimized out>
         scheme = 0x555557a08e00 "file"
         hostname = 0x0
         username = 0x0
         password = 0x0
         path = 0x555555db7850 "/home/obi-wan/test.gnucash"
         port = 0
         __func__ = "gnc_post_file_open"
#9  0x000055555555869c in inner_main (closure=<optimized out>, 
argc=<optimized out>, argv=<optimized out>) at ./gnucash/gnucash-bin.c:651
         main_mod = <optimized out>
         fn = 0x555557909a00 "/home/obi-wan/test.gnucash"
#10 0x00007ffff7dd41c1 in ?? () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#11 0x00007ffff7db5cfe in ?? () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#12 0x00007ffff7e37937 in ?? () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#13 0x00007ffff7e3d6e1 in scm_call_n () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#14 0x00007ffff7e2b4cd in ?? () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#15 0x00007ffff7db62f9 in ?? () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#16 0x00007ffff7db6399 in scm_c_with_continuation_barrier () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#17 0x00007ffff7e29fe2 in ?? () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
--Type <RET> for more, q to quit, c to continue without paging--RET
#18 0x00007ffff646437b in GC_call_with_stack_base () from 
/usr/lib/x86_64-linux-gnu/libgc.so.1
No symbol table info available.
#19 0x00007ffff7e2a3ac in scm_with_guile () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#20 0x00007ffff7dd4376 in scm_boot_guile () from 
/usr/lib/x86_64-linux-gnu/libguile-2.2.so.1
No symbol table info available.
#21 0x0000555555558021 in main (argc=<optimized out>, argv=<optimized 
out>) at ./gnucash/gnucash-bin.c:915
         localedir = <optimized out>
         __func__ = "main"



Regards,
Adrien

On 8/18/20 10:19 PM, John Ralls wrote:
> Nah, it's not *that* low level. It's all in how Gdk represents a user's monitors, keyboards, and pointing devices. That's changed quite a bit in the last 5 years or so as the Gtk4 design has evolved and GnuCash hasn't really been paying attention: It's still mostly a Gtk2 application with only the minimum amount of change needed to make it work in Gtk3.
> 
> The best I'd expect you to do to help debug it would be to get a complete stack trace with line numbers and a dump of local variables from `bt full` in the debugger after installing the Gtk and GnuCash debugging symbols.
> 
> Regards,
> John Ralls



More information about the gnucash-user mailing list