Segfault

Tim Wunder tim@thewunders.org
Mon, 29 Jul 2002 16:12:55 -0400


On 7/29/2002 3:58 PM, someone claiming to be Josh Sled wrote:
> On Mon, Jul 29, 2002 at 11:23:02AM -0400, Derek Atkins wrote:
> 
> | > Program received signal SIGSEGV, Segmentation fault.
> | > [Switching to Thread 1024 (LWP 14501)]
> | > 0x401491c0 in free () from /lib/libc.so.6
> | > (gdb) #1  0x402afa6b in g_free () from /opt/gnome/lib/libglib-1.2.so.0
> | > #2  0x40272322 in gnc_sxsl_del_vars_table_ea (key=0x402945cb, value=0x86af820, user_data=0x0) at dialog-sxsincelast.c:1650
> | > #3  0x402ab563 in g_hash_table_foreach () from /opt/gnome/lib/libglib-1.2.so.0
> | > #4  0x4027286e in create_each_transaction_helper (t=0x8537b78, d=0xbffff14c) at dialog-sxsincelast.c:1843
> | 
> | no, this looks like a bug in Josh's code.  Josh?
> 
> Yeah ... hmm... there's no call for that.  It's pretty clear that the
> hash-table elts are cleanly created, and freed only once...
> 
> Is it reproducible? 
> 

Yes. 100%. I get the splash screen, then get to tell gnucash to open the file even though there was a lock, then it draws a couple window frames, including the Since Last Run Dialog window, then segfaults.

Here's the bt from a gnucash session attempted just now...

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 15415)]
0x401491c0 in free () from /lib/libc.so.6
(gdb) bt

#0  0x401491c0 in free () from /lib/libc.so.6
#1  0x402afa6b in g_free () from /opt/gnome/lib/libglib-1.2.so.0
#2  0x40272322 in gnc_sxsl_del_vars_table_ea (key=0x402945cb, value=0x86af828, user_data=0x0) at dialog-sxsincelast.c:1650
#3  0x402ab563 in g_hash_table_foreach () from /opt/gnome/lib/libglib-1.2.so.0
#4  0x4027286e in create_each_transaction_helper (t=0x8537ad0, d=0xbffff14c) at dialog-sxsincelast.c:1843
#5  0x402d5f64 in xaccAccountVisitUnvisitedTransactions (acc=0x85279f8, proc=0x40272334 <create_each_transaction_helper>, 
    data=0xbffff14c, visited_txns=0x86af328) at Account.c:2686
#6  0x402d5fd9 in xaccAccountForEachTransaction (acc=0x85279f8, proc=0x40272334 <create_each_transaction_helper>, 
    data=0xbffff14c) at Account.c:2708
#7  0x40272b46 in create_transactions_on (sx=0x8533680, gd=0x8523438, tci=0x0, createdGUIDs=0xbffff18c)
    at dialog-sxsincelast.c:1947
#8  0x4027137b in process_auto_create_list (autoCreateList=0x851141c, sxsld=0x83d34f0) at dialog-sxsincelast.c:1092
#9  0x40270e57 in sxsincelast_init (sxsld=0x83d34f0) at dialog-sxsincelast.c:916
#10 0x4026fd95 in gnc_ui_sxsincelast_dialog_create () at dialog-sxsincelast.c:330
#11 0x4026fc68 in gnc_ui_sxsincelast_guile_wrapper (bookfile=0x85233c0 "/home/dad/Documents/Financial/GNUCash-CVS/acct")
    at dialog-sxsincelast.c:279
#12 0x4009b5bd in gw__tmp788_gnc_ui_sxsincelast_guile_wrapper_wrapper (gw__scm_arg0=1091552160) at gw-gnc.c:1298
#13 0x4003d552 in scm_deval () from /usr/lib/libguile.so.9
#14 0x4003e079 in scm_dapply () from /usr/lib/libguile.so.9
#15 0x40038704 in scm_apply () from /usr/lib/libguile.so.9
#16 0x4003922f in scm_for_each () from /usr/lib/libguile.so.9
#17 0x4003d552 in scm_deval () from /usr/lib/libguile.so.9
#18 0x4003e079 in scm_dapply () from /usr/lib/libguile.so.9
-

There's more, need it?

Tim