Am Mittwoch 22 April 2009 09:53:21 schrieb Dave Hardman: > On Wed, Apr 22, 2009 at 07:42:31AM +0200, Sebastian Held wrote: > > Without synchronized debug information, it's hopeless to find the bug. > > The next step you can take is to set a breakpoint at table-gnome.c:189 > > and step the program until the error occurs. > > Ah - stop it. The one-liner for enabling debug: did you disable > > optimization, too? > > CFLAGS should not include "-O2", but include "-O0 -ggdb" > > > > Sebastian > > Sebastian, > The Makefile.local now contains two lines: > CONFIGURE_ARGS+=--enable-debug > CFLAGS+= -O0 -ggdb > As before I opened a file, which opened with only the > accounts window, the program crashed when I selected an account ( > or would have if I had'nt had gdb running). > > And the backtrace follows. > > Dave > > > Program received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0x808202180 (LWP 100211)] > 0x0000000800c0e28f in set_dimensions_pass_one (sheet=0x80be18060, > cursor=0x808256700, dimensions=0x80be14860) at gnucash-style.c:177 > 177 gnucash-style.c: No such file or directory. > in gnucash-style.c > (gdb) bt > #0 0x0000000800c0e28f in set_dimensions_pass_one (sheet=0x80be18060, > cursor=0x808256700, dimensions=0x80be14860) at gnucash-style.c:177 > #1 0x0000000800c0ebb2 in styles_recompute_layout_dimensions > (sheet=0x80be18060, default_width=680) at gnucash-style.c:493 > #2 0x0000000800c0ec8e in gnucash_sheet_styles_set_dimensions > (sheet=0x80be18060, default_width=680) at gnucash-style.c:506 > #3 0x0000000800c0f44d in gnucash_sheet_compile_styles (sheet=0x80be18060) > at gnucash-style.c:668 > #4 0x0000000800c108ce in gnc_table_init_gui (widget=0x80bd79e20, > data=0x8085a0910) at table-gnome.c:189
Please try to apply the attached patch from Jonathan Kamens. Sebastian
Index: /home/sebastian/src/gnucash-2.2/src/register/register-gnome/gnucash-style.c =================================================================== --- /home/sebastian/src/gnucash-2.2/src/register/register-gnome/gnucash-style.c (.../trunk/src/register/register-gnome/gnucash-style.c) (Revision 13692) +++ /home/sebastian/src/gnucash-2.2/src/register/register-gnome/gnucash-style.c (.../branches/2.2/src/register/register-gnome/gnucash-style.c) (Revision 18054) @@ -48,7 +48,16 @@ return &key; } +static gpointer +style_create_key (SheetBlockStyle *style) +{ + static gint key; + key = style->cursor->num_rows; + + return g_memdup(&key, sizeof(key)); +} + static void cell_dimensions_construct (gpointer _cd, gpointer user_data) { @@ -103,7 +112,7 @@ if (!dimensions) { dimensions = style_dimensions_new (style); g_hash_table_insert (sheet->dimensions_hash_table, - style_get_key (style), dimensions); + style_create_key (style), dimensions); } dimensions->refcount++;
_______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel