After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 737188 - Caps Lock Killer
Caps Lock Killer
Status: RESOLVED OBSOLETE
Product: GnuCash
Classification: Other
Component: User Interface General
git-master
Other Linux
: Normal normal
: ---
Assigned To: gnucash-ui-maint
gnucash-ui-maint
Depends on:
Blocks:
 
 
Reported: 2014-09-23 14:50 UTC by Bob Brush
Modified: 2018-06-29 23:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
ATI information (433.77 KB, text/plain)
2014-12-19 23:44 UTC, Bob Brush
Details
Valgrind Output (172.03 KB, text/plain)
2014-12-20 14:12 UTC, Bob Brush
Details

Description Bob Brush 2014-09-23 14:50:46 UTC
When a report is open and GnuCash has been used for an extended time pressing the caps lock button with cause the program to vanish without a trace. I don't hit the caps lock on purpose, but every now and then it happens..
Comment 1 Bob Brush 2014-12-19 21:29:37 UTC
gdb gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 /home/brushb/Testing_0001-Fix-lot-scrubbing-for-business-lots-Nov-4-14/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_0001-Fix-lot-scrubbing-for-business-lots-Nov-4-14/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35
java version "1.7.0_71"
OpenJDK Runtime Environment (IcedTea 2.5.3) (Gentoo package icedtea-7.2.5.3)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff02a7501 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) backtrace
  • #0 ??
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #1 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #2 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #3 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_by_name
    from /usr/lib64/libgobject-2.0.so.0
  • #5 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #6 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #7 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #9 ??
    from /usr/lib64/libglib-2.0.so.0
  • #10 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #11 gtk_main
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #12 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 608
  • #13 inner_main
    at gnucash-bin.c line 621
  • #14 ??
    from /usr/lib64/libguile.so.17
  • #15 ??
    from /usr/lib64/libguile.so.17
  • #16 scm_c_catch
    from /usr/lib64/libguile.so.17
  • #17 scm_i_with_continuation_barrier
  • #18 scm_c_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #19 scm_i_with_guile_and_parent
    from /usr/lib64/libguile.so.17
  • #20 scm_boot_guile
    from /usr/lib64/libguile.so.17
  • #21 main
    at gnucash-bin.c line 776

Comment 2 John Ralls 2014-12-19 23:23:02 UTC
Note that there's nothing in the stack trace involving GnuCash directly after calling gtk_main in frame 12. That probably means that the closure associated with the event, which is being invoked in frame 1, has been deallocated or smashed. Unfortunately the only way to nail this down is to run GnuCash under valgrind, something that would be pretty painful if it takes a long time for the memory problem to show itself.
Comment 3 Bob Brush 2014-12-19 23:44:05 UTC
Created attachment 293118 [details]
ATI information
Comment 4 Bob Brush 2014-12-19 23:46:13 UTC
This is my hardware in case it ends up being related to video card drivers or
something like that, I'm really suprised more people haven't reported a similar
problem.  Hope this isn't spamming the bug report.

MacBook Pro (15-inch, Late 2011)

--------------------------------------------------------------

00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family
DRAM Controller (rev 09)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core
Processor Family PCI Express Root Port (rev 09)
00:01.1 PCI bridge: Intel Corporation Xeon E3-1200/2nd Generation Core
Processor Family PCI Express Root Port (rev 09)
00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series
Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family
USB Universal Host Controller #5 (rev 05)
00:1a.7 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family
USB Enhanced Host Controller #2 (rev 05)
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family
High Definition Audio Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI
Express Root Port 1 (rev b5)
00:1c.1 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI
Express Root Port 2 (rev b5)
00:1c.2 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI
Express Root Port 3 (rev b5)
00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family
USB Universal Host Controller #1 (rev 05)
00:1d.7 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family
USB Enhanced Host Controller #1 (rev 05)
00:1f.0 ISA bridge: Intel Corporation HM65 Express Chipset Family LPC
Controller (rev 05)
00:1f.2 IDE interface: Intel Corporation 6 Series/C200 Series Chipset Family 4
port SATA IDE Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus
Controller (rev 05)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI]
Whistler [Radeon HD 6630M/6650M/6750M/7670M/7690M]
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Turks/Whistler
HDMI Audio [Radeon HD 6000 Series]
02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM57765 Gigabit
Ethernet PCIe (rev 10)
02:00.1 SD Host controller: Broadcom Corporation BCM57765/57785 SDXC/MMC Card
Reader (rev 10)
03:00.0 Network controller: Broadcom Corporation BCM4331 802.11a/b/g/n (rev 02)
04:00.0 FireWire (IEEE 1394): LSI Corporation FW643 [TrueFire] PCIe 1394b
Controller (rev 08)

--------------------------------------------------------

Module                  Size  Used by
nfsv3                  16123  1 
nfs_acl                 1925  1 nfsv3
rfcomm                 41098  12 
uas                    13552  0 
wacom                  45343  0 
rpcsec_gss_krb5        17869  0 
auth_rpcgss            33455  1 rpcsec_gss_krb5
oid_registry            2035  1 auth_rpcgss
nfsv4                  95141  0 
xt_tcpudp               2704  3 
ip6t_rpfilter           1472  1 
ip6t_REJECT             3456  2 
ipt_REJECT              2032  2 
xt_conntrack            2480  7 
ebtable_nat             1440  0 
ebtable_broute          1168  0 
bridge                 74805  1 ebtable_broute
stp                     1385  1 bridge
llc                     3088  2 stp,bridge
ebtable_filter          1440  0 
ebtables               19581  3 ebtable_broute,ebtable_nat,ebtable_filter
ip6table_nat            2704  1 
nf_conntrack_ipv6       7024  5 
nf_defrag_ipv6         24671  1 nf_conntrack_ipv6
nf_nat_ipv6             2672  1 ip6table_nat
ip6table_mangle         1296  1 
ip6table_security       1008  1 
ip6table_raw            1008  1 
ip6table_filter         1088  1 
ip6_tables             13161  5
ip6table_filter,ip6table_mangle,ip6table_security,ip6table_nat,ip6table_raw
iptable_nat             2624  1 
nf_conntrack_ipv4      10926  4 
nf_defrag_ipv4          1262  1 nf_conntrack_ipv4
nf_nat_ipv4             2638  1 iptable_nat
nf_nat                 10252  4
nf_nat_ipv4,nf_nat_ipv6,ip6table_nat,iptable_nat
nf_conntrack           66950  8
nf_nat,nf_nat_ipv4,nf_nat_ipv6,xt_conntrack,ip6table_nat,iptable_nat,nf_conntrack_ipv4,nf_conntrack_ipv6
iptable_mangle          1232  1 
iptable_security        1056  1 
iptable_raw             1056  1 
iptable_filter          1136  1 
ip_tables              13605  5
iptable_security,iptable_filter,iptable_mangle,iptable_nat,iptable_raw
x_tables               13994  16
iptable_security,ip6table_filter,ip6table_mangle,ip6t_rpfilter,ip_tables,xt_tcpudp,ip6table_security,xt_conntrack,iptable_filter,ip6table_raw,ebtables,ipt_REJECT,iptable_mangle,ip6_tables,iptable_raw,ip6t_REJECT
bnep                   11013  2 
intel_rapl              9352  0 
x86_pkg_temp_thermal     5664  0 
intel_powerclamp        7668  0 
coretemp                4776  0 
kvm_intel             113456  0 
kvm                   222003  1 kvm_intel
crct10dif_pclmul        3303  0 
fglrx                8548868  124 
hid_appleir             2144  0 
crc32_pclmul            2075  0 
b43                   324463  0 
btusb                  17688  0 
bluetooth             298446  32 bnep,btusb,rfcomm
6lowpan_iphc            9284  1 bluetooth
applesmc                8776  0 
joydev                  7680  0 
bcm5974                 7664  0 
uvcvideo               58381  0 
mac80211              263758  1 b43
videobuf2_vmalloc       2313  1 uvcvideo
videobuf2_memops        1840  1 videobuf2_vmalloc
videobuf2_core         31620  1 uvcvideo
cfg80211              168689  2 b43,mac80211
v4l2_common             4035  1 videobuf2_core
ssb                    42341  1 b43
videodev               89019  3 uvcvideo,v4l2_common,videobuf2_core
media                   9335  2 uvcvideo,videodev
iTCO_wdt                4256  0 
iTCO_vendor_support     1617  1 iTCO_wdt
crc32c_intel            8416  0 
lpc_ich                13088  0 
ghash_clmulni_intel     2947  0 
aesni_intel           126199  1 
lrw                     2912  1 aesni_intel
sdhci_pci               9280  0 
sdhci                  24298  1 sdhci_pci
mmc_core               79564  4 b43,ssb,sdhci,sdhci_pci
firewire_ohci          24632  0 
bcma                   28892  1 b43
i2c_i801               13256  0 
glue_helper             3685  1 aesni_intel
ablk_helper             1644  1 aesni_intel
snd_hda_codec_cirrus     7168  1 
snd_hda_codec_generic    38653  1 snd_hda_codec_cirrus
shpchp                 20031  0 
snd_hda_codec_hdmi     30620  1 
cryptd                  5358  3 ghash_clmulni_intel,aesni_intel,ablk_helper
snd_hda_intel          18007  5 
snd_hda_controller     15788  1 snd_hda_intel
snd_hda_codec          72533  5
snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_intel,snd_hda_controller,snd_hda_codec_cirrus
snd_hwdep               4734  1 snd_hda_codec
snd_pcm                63988  4
snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel,snd_hda_controller
snd_timer              14470  1 snd_pcm
sbs                     5584  0 
snd                    46934  18
snd_hwdep,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_hda_codec_generic,snd_hda_codec,snd_hda_intel,snd_hda_codec_cirrus
microcode              12269  0 
pcspkr                  1520  0 
sbshc                   3101  1 sbs
apple_gmux              4664  0 
apple_bl                2814  1 apple_gmux
ipv6                  272039  62
ip6table_mangle,ip6t_rpfilter,bridge,nf_defrag_ipv6,nf_nat_ipv6,ip6table_nat,ip6t_REJECT,nf_conntrack_ipv6
virtio_pci              6093  0 
virtio_scsi             8802  0 
virtio_blk              6672  0 
virtio_net             18282  0 
virtio_console         16212  0 
virtio_balloon          4775  0 
virtio_ring             6894  6
virtio_blk,virtio_net,virtio_pci,virtio_balloon,virtio_console,virtio_scsi
virtio                  3477  6
virtio_blk,virtio_net,virtio_pci,virtio_balloon,virtio_console,virtio_scsi
xts                     2743  0 
gf128mul                5258  2 lrw,xts
aes_x86_64              7279  1 aesni_intel
sha512_generic          4792  0 
sha256_generic          9684  0 
iscsi_tcp               7932  0 
e1000                 100788  0 
fuse                   66390  3 
xfs                   472924  0 
nfs                   102107  3 nfsv3,nfsv4
lockd                  52574  2 nfs,nfsv3
sunrpc                152716  20
nfs,rpcsec_gss_krb5,auth_rpcgss,lockd,nfsv3,nfsv4,nfs_acl
jfs                   139415  0 
reiserfs              201235  0 
ext4                  288514  1 
jbd2                   48906  1 ext4
ext3                  107283  0 
jbd                    36658  1 ext3
ext2                   53040  0 
mbcache                 6251  3 ext2,ext3,ext4
sl811_hcd              14176  0 
hid_generic             1081  0 
xhci_hcd              119101  0 
ohci_pci                3688  0 
ohci_hcd               30607  1 ohci_pci
sx8                    10972  0 
imm                     8745  0 
parport                26875  1 imm
pata_pcmcia             9740  0 
pcmcia                 39083  3 b43,ssb,pata_pcmcia
uhci_hcd               28517  0 
ttm                    52322  0 
drm_kms_helper         28716  0 
tg3                   130646  0 
firewire_core          44022  1 firewire_ohci
drm                   207631  2 ttm,drm_kms_helper
ptp                     8988  1 tg3
pps_core                7688  1 ptp
ehci_pci                3600  0 
agpgart                22705  3 drm,ttm,fglrx
ehci_hcd               54002  1 ehci_pci
i2c_algo_bit            4503  0 

-------------------------------------------------------------
Comment 5 Bob Brush 2014-12-20 00:06:48 UTC
I'm not sure how to run valgrind, but I'm willing, I tried a couple things that came up in google, but I must not be getting it because it either did nothing or gave an error message.  Sorry..
Comment 6 John Ralls 2014-12-20 03:17:29 UTC
Well, I'd start off by just running it as
  valgrind gnucash
and see what it reports when gnucash gets around to crashing. The problem with that approach is that valgrind slows down the program under test pretty severely and since you said that the problem doesn't surface until you've been running for a while the slowdown would make that pretty painful.

Any more sophisticated use of valgrind requires someone familiar both with valgrind (and I'm not in that category as I use Apple tools most of the time) and the source code being examined.
Comment 7 Bob Brush 2014-12-20 03:44:46 UTC
Running gives and error, I am finding that Sabayon doesn't install the debug parts unless you edit a file: /etc/entropy/client.conf and change a setting: splitdebug = enable and then reinstall glibc: equo install glibc

Wow, it really is slow, I'll let you know if anything surfaces..

Error:
==10593== Memcheck, a memory error detector
==10593== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==10593== Using Valgrind-3.10.0 and LibVEX; rerun with -h for copyright info
==10593== Command: gnucash
==10593== 

valgrind:  Fatal error at startup: a function redirection
valgrind:  which is mandatory for this platform-tool combination
valgrind:  cannot be set up.  Details of the redirection are:
valgrind:  
valgrind:  A must-be-redirected function
valgrind:  whose name matches the pattern:      strlen
valgrind:  in an object with soname matching:   ld-linux-x86-64.so.2
valgrind:  was not found whilst processing
valgrind:  symbols from the object with soname: ld-linux-x86-64.so.2
valgrind:  
valgrind:  Possible fixes: (1, short term): install glibc's debuginfo
valgrind:  package on this machine.  (2, longer term): ask the packagers
valgrind:  for your Linux distribution to please in future ship a non-
valgrind:  stripped ld.so (or whatever the dynamic linker .so is called)
valgrind:  that exports the above-named function using the standard
valgrind:  calling conventions for this platform.  The package you need
valgrind:  to install for fix (1) is called
valgrind:  
valgrind:    On Debian, Ubuntu:                 libc6-dbg
valgrind:    On SuSE, openSuSE, Fedora, RHEL:   glibc-debuginfo
valgrind:  
valgrind:  Cannot continue -- exiting now.  Sorry.

https://forum.sabayon.org/viewtopic.php?f=76&t=25550&p=145635&hilit=valgrind#p145635
Comment 8 Bob Brush 2014-12-20 14:12:58 UTC
Created attachment 293125 [details]
Valgrind Output

So I started it last night before I left and when I got in this morning it was started, but the tabs and stuff are not responsive, so I may have to try again later..

This is what I ran:

valgrind /home/brushb/Testing_0001-Fix-lot-scrubbing-for-business-lots-Nov-4-14/bin/gnucash

This was the last message:

==14070== More than 10000000 total errors detected.  I'm not reporting any more.
==14070== Final error counts will be inaccurate.  Go fix your program!
==14070== Rerun with --error-limit=no to disable this cutoff.  Note
==14070== that errors may occur in your program without prior warning from
==14070== Valgrind, because errors are no longer being displayed.
==14070==
Comment 9 Bob Brush 2014-12-29 03:43:45 UTC
Started GnuCash, opened bill for customer unpost and repost, apply payment to the newly reposted invoice, repeated unpost, repost, applied payment press capps lock,  Boom!  Repeating the test did not have the same results.

gdb Testing_PatchB/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 Testing_PatchB/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_PatchB/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) backtrace
  • #0 ??
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #1 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #2 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #3 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_by_name
    from /usr/lib64/libgobject-2.0.so.0
  • #5 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #6 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #7 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #9 ??
    from /usr/lib64/libglib-2.0.so.0
  • #10 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #11 gtk_main
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #12 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 608
  • #13 inner_main
    at gnucash-bin.c line 621
  • #14 ??
    from /usr/lib64/libguile.so.17
  • #15 ??
    from /usr/lib64/libguile.so.17
  • #16 scm_c_catch
    from /usr/lib64/libguile.so.17
  • #17 scm_i_with_continuation_barrier
  • #18 scm_c_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #19 scm_i_with_guile_and_parent
    from /usr/lib64/libguile.so.17
  • #20 scm_boot_guile
    from /usr/lib64/libguile.so.17
  • #21 main
    at gnucash-bin.c line 776

Comment 10 Bob Brush 2014-12-29 04:31:03 UTC
Another crash while applying a payment in another test:

gdb Testing_PatchC/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 Testing_PatchC/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_PatchC/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35
java version "1.7.0_71"
OpenJDK Runtime Environment (IcedTea 2.5.3) (Gentoo package icedtea-7.2.5.3)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) backtrace
  • #0 ??
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #1 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #2 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #3 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_by_name
    from /usr/lib64/libgobject-2.0.so.0
  • #5 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #6 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #7 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #9 ??
    from /usr/lib64/libglib-2.0.so.0
  • #10 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #11 gtk_main
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #12 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 608
  • #13 inner_main
    at gnucash-bin.c line 621
  • #14 ??
    from /usr/lib64/libguile.so.17
  • #15 ??
    from /usr/lib64/libguile.so.17
  • #16 scm_c_catch
    from /usr/lib64/libguile.so.17
  • #17 scm_i_with_continuation_barrier
  • #18 scm_c_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #19 scm_i_with_guile_and_parent
    from /usr/lib64/libguile.so.17
  • #20 scm_boot_guile
    from /usr/lib64/libguile.so.17
  • #21 main
    at gnucash-bin.c line 776

Comment 11 Bob Brush 2014-12-29 04:39:47 UTC
In this case nothing was done, GnuCash was patiently sitting in the background while I typed out the above comment and copied and pasted the trace.  I gave the window the focus and pressed the Caps Lock button and it killed it, just like that, no string of events or pattern, just sitting in the background, so hard to understand!

gdb Testing_PatchB/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 Testing_PatchB/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_PatchB/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35
java version "1.7.0_71"
OpenJDK Runtime Environment (IcedTea 2.5.3) (Gentoo package icedtea-7.2.5.3)
OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) backtrace
  • #0 ??
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #1 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #2 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #3 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_by_name
    from /usr/lib64/libgobject-2.0.so.0
  • #5 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #6 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #7 ??
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #9 ??
    from /usr/lib64/libglib-2.0.so.0
  • #10 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #11 gtk_main
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #12 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 608
  • #13 inner_main
    at gnucash-bin.c line 621
  • #14 ??
    from /usr/lib64/libguile.so.17
  • #15 ??
    from /usr/lib64/libguile.so.17
  • #16 scm_c_catch
    from /usr/lib64/libguile.so.17
  • #17 scm_i_with_continuation_barrier
  • #18 scm_c_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #19 scm_i_with_guile_and_parent
    from /usr/lib64/libguile.so.17
  • #20 scm_boot_guile
    from /usr/lib64/libguile.so.17
  • #21 main
    at gnucash-bin.c line 776

Comment 12 John Ralls 2014-12-29 15:13:18 UTC
That looks like a problem in libgtk-x11. Does it ever happen on any other program? Can you install the libgtk and libgdk debugging packages so that the stack traces give a better indication of what's happening?
Comment 13 Bob Brush 2015-01-02 02:10:57 UTC
I installed the debug packages for x11-libs/c++-gtk-utils and glibc, does this help any?

In this case I opened the program made a few entries in the check book registry, and then left it running for several hours, when I returned I pressed the caps lock button..

It does say something different from normal:

gdb Testing_December_28_2014/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 Testing_December_28_2014/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_December_28_2014/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in remove_capslock_feedback ()
   from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) backtrace
  • #0 remove_capslock_feedback
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #1 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #2 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #3 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_by_name
    from /usr/lib64/libgobject-2.0.so.0
  • #5 gdk_event_translate
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #6 _gdk_events_queue
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #7 gdk_event_dispatch
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #9 ??
    from /usr/lib64/libglib-2.0.so.0
  • #10 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #11 gtk_main
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #12 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 608
  • #13 inner_main
    at gnucash-bin.c line 621
  • #14 ??
    from /usr/lib64/libguile.so.17
  • #15 ??
    from /usr/lib64/libguile.so.17
  • #16 scm_c_catch
    from /usr/lib64/libguile.so.17
  • #17 scm_i_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #18 scm_c_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #19 scm_i_with_guile_and_parent
    from /usr/lib64/libguile.so.17
  • #20 scm_boot_guile
    from /usr/lib64/libguile.so.17
  • #21 main
    at gnucash-bin.c line 776

Comment 14 John Ralls 2015-01-02 05:01:38 UTC
Yeah, that points the finger pretty squarely at gtk. To debug a wee bit further, crash it again then instead of bt, say
  info frame
and 
  p priv
if priv isn't 0, try
  p *priv
which should print a "memory at xxx inaccessible" or similar.

As a guess you're leaving GC with a cell editor open and something is stepping on the memory for the GtkEntry so when it tries to process the key event it segfaults because the object's private pointer is invalid.
Comment 15 Bob Brush 2015-01-04 06:18:15 UTC
In this case I opened gnucash, clicked on the Vendor overview tab, sorted by balance, received a payment to a vendor, then when it returned to the overview tab I pressed caps lock.


gdb Testing_Jan_4_2015/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 Testing_Jan_4_2015/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_Jan_4_2015/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in remove_capslock_feedback ()
   from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) info frame
Stack level 0, frame at 0x7fffffffc9e0:
 rip = 0x7ffff028f501 in remove_capslock_feedback; saved rip = 0x7fffeeb83380
 called by frame at 0x7fffffffca80
 Arglist at 0x7fffffffc9b8, args: 
 Locals at 0x7fffffffc9b8, Previous frame's sp is 0x7fffffffc9e0
 Saved registers:
  rbx at 0x7fffffffc9c8, rbp at 0x7fffffffc9d0, rip at 0x7fffffffc9d8
(gdb) p priv
No symbol "priv" in current context.
(gdb) p *priv
No symbol "priv" in current context.
(gdb)
Comment 17 John Ralls 2015-01-04 16:06:11 UTC
(In reply to comment #16)
> Are these bugs related:
> https://bugzilla.redhat.com/show_bug.cgi?id=1151008
> https://bugzilla.redhat.com/show_bug.cgi?id=848147

Sure looks like it. Unfortunately the RedHat packager seems to have completely blown them off.

>  tack level 0, frame at 0x7fffffffc9e0:
>  rip = 0x7ffff028f501 in remove_capslock_feedback; saved rip = 0x7fffeeb83380
>  called by frame at 0x7fffffffca80
>  Arglist at 0x7fffffffc9b8, args: 
>  Locals at 0x7fffffffc9b8, Previous frame's sp is 0x7fffffffc9e0
>  Saved registers:
>   rbx at 0x7fffffffc9c8, rbp at 0x7fffffffc9d0, rip at 0x7fffffffc9d8
> (gdb) p priv
> No symbol "priv" in current context.

Hmm. Doesn't seem to actually have any symbols. That's pretty useless. Can you do a real debug build of gtk+-2.24.25 with Entropy?
Comment 18 Bob Brush 2015-01-05 00:54:21 UTC
I can pretty much make this crash on demand now, but the debug output isn't getting any better, could it be that I am running from my home directory that it isn't picking up the correct files?

ls /usr/lib/debug/usr/lib32/
gtk-2.0                            libglib-2.0.so.0.4002.0.debug
gtk-3.0                            libgmodule-2.0.so.0.4002.0.debug
libdbus-glib-1.so.2.2.2.debug      libgobject-2.0.so.0.4002.0.debug
libgailutil-3.so.0.0.0.debug       libgthread-2.0.so.0.4002.0.debug
libgailutil.so.18.0.1.debug        libgtk-3.so.0.1200.2.debug
libgdk-3.so.0.1200.2.debug         libgtk-x11-2.0.so.0.2400.25.debug
libgdk-x11-2.0.so.0.2400.25.debug  libX11.so.6.3.0.debug
libgio-2.0.so.0.4002.0.debug       libX11-xcb.so.1.0.0.debug


 ls /usr/lib/debug/usr/lib64
aqbanking
dbd
goffice
gtk-2.0
gtk-3.0
gwenhywfar
libaqbankingpp.so.0.0.0.debug
libaqbanking.so.34.4.3.debug
libaqhbci.so.22.0.0.debug
libaqnone.so.34.4.3.debug
libaqofxconnect.so.7.0.2.debug
libcxx-gtk-utils-3-2.2.so.0.1.5.debug
libdbi.so.1.1.0.debug
libdbus-glib-1.so.2.2.2.debug
libgailutil-3.so.0.0.0.debug
libgailutil.so.18.0.1.debug
libgdk-3.so.0.1200.2.debug
libgdk-x11-2.0.so.0.2400.25.debug
libgio-2.0.so.0.4002.0.debug
libglade
libglib-2.0.so.0.4002.0.debug
libgmodule-2.0.so.0.4002.0.debug
libgnomeui-2.so.0.2400.5.debug
libgobject-2.0.so.0.4002.0.debug
libgoffice-0.10.so.10.0.18.debug
libgoffice-0.8.so.8.0.17.debug
libgsf-1.so.114.0.30.debug
libgthread-2.0.so.0.4002.0.debug
libgtk-3.so.0.1200.2.debug
libgtkhtml-4.0.so.0.0.0.debug
libgtkhtml-editor-4.0.so.0.0.0.debug
libgtk-x11-2.0.so.0.2400.25.debug
libguilereadline-v-17.so.17.0.3.debug
libguile.so.17.4.0.debug
libguile-srfi-srfi-13-14-v-3.so.3.0.1.debug
libguile-srfi-srfi-1-v-3.so.3.0.2.debug
libguile-srfi-srfi-4-v-3.so.3.0.1.debug
libguile-srfi-srfi-60-v-2.so.2.0.2.debug
libgwengui-cpp.so.0.0.0.debug
libgwengui-gtk2.so.0.0.0.debug
libgwengui-qt4.so.0.0.0.debug
libgwenhywfar.so.60.12.0.debug
libjavascriptcoregtk-1.0.so.0.16.15.debug
libktoblzcheck.so.1.5.22.debug
libming.so.1.4.4.debug
libofx.so.5.0.0.debug
libosp.so.5.0.0.debug
libwebkitgtk-1.0.so.0.22.13.debug
libwx_baseu-3.0.so.0.1.0.debug
libwx_baseu_net-3.0.so.0.1.0.debug
libwx_baseu_xml-3.0.so.0.1.0.debug
libwx_gtk2u_adv-3.0.so.0.1.0.debug
libwx_gtk2u_aui-3.0.so.0.1.0.debug
libwx_gtk2u_core-3.0.so.0.1.0.debug
libwx_gtk2u_gl-3.0.so.0.1.0.debug
libwx_gtk2u_html-3.0.so.0.1.0.debug
libwx_gtk2u_media-3.0.so.0.1.0.debug
libwx_gtk2u_propgrid-3.0.so.0.1.0.debug
libwx_gtk2u_qa-3.0.so.0.1.0.debug
libwx_gtk2u_ribbon-3.0.so.0.1.0.debug
libwx_gtk2u_richtext-3.0.so.0.1.0.debug
libwx_gtk2u_stc-3.0.so.0.1.0.debug
libwx_gtk2u_xrc-3.0.so.0.1.0.debug
libX11.so.6.3.0.debug
libX11-xcb.so.1.0.0.debug
perl5
python2.7

ls /usr/lib/debug/usr/bin/
aqbanking-cli.debug
aqhbci-tool4.debug
dbl2png.debug
dbus-binding-tool.debug
doxygen.debug
doxywizard.debug
filezilla.debug
fzputtygen.debug
fzsftp.debug
gapplication.debug
gct-tool.debug
gdbus.debug
gftp-gtk.debug
gftp-text.debug
gif2dbl.debug
gif2mask.debug
gio-querymodules.debug
glib-compile-resources.debug
glib-compile-schemas.debug
glib-genmarshal.debug
gobject-query.debug
gresource.debug
gsa.debug
gsettings.debug
gsf.debug
gsf-office-thumbnailer.debug
gsf-vba-dump.debug
gtester.debug
gtkhtml-editor-test-4.0.debug
gtk-launch.debug
gtk-update-icon-cache.debug
guile.debug
hbcixml3.debug
i686-pc-linux-gnu-gtk-query-immodules-2.0.debug
i686-pc-linux-gnu-gtk-query-immodules-3.0.debug
i686-pc-linux-gnu-pkg-config.debug
info.debug
infokey.debug
install-info.debug
jsc-1.debug
ktoblzcheck.debug
listaction_d.debug
listaction.debug
listfdb.debug
listjpeg.debug
listmp3.debug
listswf_d.debug
listswf.debug
makefdb.debug
makeswf.debug
mklistdoc.debug
ofx2qif.debug
ofxconnect.debug
ofxdump.debug
onsgmls.debug
osgmlnorm.debug
ospam.debug
ospcat.debug
ospent.debug
osx.debug
pencil.debug
pkg-config.debug
png2dbl.debug
raw2adpcm.debug
swftocxx.debug
swftoperl.debug
swftophp.debug
swftopython.debug
swftotcl.debug
swig.debug
texindex.debug
typemaker2.debug
typemaker.debug
wxrc-3.0.debug
x86_64-pc-linux-gnu-gtk-query-immodules-2.0.debug
x86_64-pc-linux-gnu-gtk-query-immodules-3.0.debug
x86_64-pc-linux-gnu-pkg-config.debug
xmlmerge.debug


gdb Testing_Jan_4_2015/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 Testing_Jan_4_2015/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_Jan_4_2015/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in remove_capslock_feedback ()
   from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) info frame
Stack level 0, frame at 0x7fffffffc9e0:
 rip = 0x7ffff028f501 in remove_capslock_feedback; saved rip = 0x7fffeeb83380
 called by frame at 0x7fffffffca80
 Arglist at 0x7fffffffc9b8, args: 
 Locals at 0x7fffffffc9b8, Previous frame's sp is 0x7fffffffc9e0
 Saved registers:
  rbx at 0x7fffffffc9c8, rbp at 0x7fffffffc9d0, rip at 0x7fffffffc9d8
(gdb) p priv
No symbol "priv" in current context.
(gdb) p *priv
No symbol "priv" in current context.
(gdb)
Comment 19 Bob Brush 2015-01-05 00:55:25 UTC
this is the crash as root:

gdb /home/brushb/Testing_Jan_4_2015/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 /home/brushb/Testing_Jan_4_2015/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_Jan_4_2015/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/root/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/root/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
[New LWP 10408]
Found Finance::Quote version 1.35

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in remove_capslock_feedback ()
   from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) info frame
Stack level 0, frame at 0x7fffffffcd80:
 rip = 0x7ffff028f501 in remove_capslock_feedback; saved rip = 0x7fffeeb83380
 called by frame at 0x7fffffffce20
 Arglist at 0x7fffffffcd58, args: 
 Locals at 0x7fffffffcd58, Previous frame's sp is 0x7fffffffcd80
 Saved registers:
  rbx at 0x7fffffffcd68, rbp at 0x7fffffffcd70, rip at 0x7fffffffcd78
(gdb) p priv
No symbol "priv" in current context.
(gdb) bt
  • #0 remove_capslock_feedback
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #1 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #2 signal_emit_unlocked_R
    from /usr/lib64/libgobject-2.0.so.0
  • #3 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_by_name
    from /usr/lib64/libgobject-2.0.so.0
  • #5 gdk_event_translate
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #6 _gdk_events_queue
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #7 gdk_event_dispatch
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #9 g_main_context_iterate.isra
    from /usr/lib64/libglib-2.0.so.0
  • #10 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #11 gtk_main
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #12 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 608
  • #13 inner_main
    at gnucash-bin.c line 621
  • #14 invoke_main_func
    from /usr/lib64/libguile.so.17
  • #15 c_body
    from /usr/lib64/libguile.so.17
  • #16 scm_c_catch
    from /usr/lib64/libguile.so.17
  • #17 scm_i_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #18 scm_c_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #19 scm_i_with_guile_and_parent
    from /usr/lib64/libguile.so.17
  • #20 scm_boot_guile
    from /usr/lib64/libguile.so.17
  • #21 main
    at gnucash-bin.c line 776

Comment 20 John Ralls 2015-01-05 00:59:44 UTC
(In reply to comment #18)
> I can pretty much make this crash on demand now, but the debug output isn't
> getting any better, could it be that I am running from my home directory that
> it isn't picking up the correct files?

Seems unlikely, though if Sabayon has some sort of support you might ask there. ISTM more likely that they expect that anyone who wants to debug a system library will build it themselves or use Entropy to build it.
Comment 21 Bob Brush 2015-01-05 01:00:34 UTC
same crash not as root, looks the same, so it must not have anything to do with the user profile

gdb Testing_Jan_4_2015/bin/gnucash
GNU gdb (Gentoo 7.8.1 vanilla) 7.8.1
Copyright (C) 2014 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-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.gentoo.org/>.
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 Testing_Jan_4_2015/bin/gnucash...done.
(gdb) run
Starting program: /home/brushb/Testing_Jan_4_2015/bin/gnucash 
warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
warning: File "/lib64/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
	add-auto-load-safe-path /lib64/libthread_db-1.0.so
line to your configuration file "/home/brushb/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/brushb/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.


This is a development version. It may or may not work.
Report bugs and other problems to gnucash-devel@gnucash.org
You can also lookup and file bug reports at http://bugzilla.gnome.org
To find the last stable version, please refer to http://www.gnucash.org
Found Finance::Quote version 1.35

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff028f501 in remove_capslock_feedback ()
   from /usr/lib64/libgtk-x11-2.0.so.0
(gdb) bt
  • #0 remove_capslock_feedback
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #1 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #2 signal_emit_unlocked_R
    from /usr/lib64/libgobject-2.0.so.0
  • #3 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_by_name
    from /usr/lib64/libgobject-2.0.so.0
  • #5 gdk_event_translate
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #6 _gdk_events_queue
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #7 gdk_event_dispatch
    from /usr/lib64/libgdk-x11-2.0.so.0
  • #8 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #9 g_main_context_iterate.isra
    from /usr/lib64/libglib-2.0.so.0
  • #10 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #11 gtk_main
    from /usr/lib64/libgtk-x11-2.0.so.0
  • #12 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 608
  • #13 inner_main
    at gnucash-bin.c line 621
  • #14 invoke_main_func
    from /usr/lib64/libguile.so.17
  • #15 c_body
    from /usr/lib64/libguile.so.17
  • #16 scm_c_catch
    from /usr/lib64/libguile.so.17
  • #17 scm_i_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #18 scm_c_with_continuation_barrier
    from /usr/lib64/libguile.so.17
  • #19 scm_i_with_guile_and_parent
    from /usr/lib64/libguile.so.17
  • #20 scm_boot_guile
    from /usr/lib64/libguile.so.17
  • #21 main
    at gnucash-bin.c line 776

Comment 22 John Ralls 2015-01-05 01:09:08 UTC
No, I don't think it has anything to do with the user profile. ISTM the likely cause is a bug either in Gtk in making the closure for handling the caps lock event or a bug in the kernel that causes a malformed event to get sent out.

Since you can apparently crash it repeatably and quickly, what's the recipe?
Comment 23 Bob Brush 2015-01-05 02:00:31 UTC
receive a vendor payment and then press caps lock
Comment 24 Bob Brush 2015-03-27 01:19:31 UTC
I'm now switched to a new operating system, but still experiencing the same bug..  I am not using proprietary drivers, originally I thought it might be related to that, but this is all open source.

Linux (my hostname) 3.10.0-123.20.1.el7.x86_64 #1 SMP Wed Jan 28 12:39:44 PST 2015 x86_64 x86_64 x86_64 GNU/Linux

I keep forgetting about this bug until it strikes again..
Comment 25 Bob Brush 2015-03-30 03:14:05 UTC
WORKAROUND: open gnome tweak tool and under the "Typing" settings on the left find the entry "Caps Lock key behavior" by default it says "Disabled" and set it to "Caps Lock is disabled"

After trying a lot of different settings, it looks like basically if the setting still causes the little caps lock light to turn on and off it will still crash GnuCash, but if not all is well, I'm sure the light doesn't crash the program, but it will give you an idea of what works and what doesn't.

This is probably a GTK bug as there seems to be a lot of caps lock gtk bugs, not sure what is so special about the caps lock key..
Comment 26 John Ralls 2018-06-29 23:34:03 UTC
GnuCash bug tracking has moved to a new Bugzilla host. The new URL for this bug is https://bugs.gnucash.org/show_bug.cgi?id=737188. Please continue processing the bug there and please update any external references or bookmarks.