Bug#378346: libgail crashes on alpha
On Mon, Oct 16, 2006 at 04:42:30PM +0200, Loïc Minier wrote: I suggest you install libgail-dbg, and libgtk2.0-0-dbg to get a nicer backtrace. Could you try rebuilding against Gtk 2.10 / Gail 1.9 from experimental? This would permit isolating the fix and perhaps backporting it if it's fixed in 1.9. Installing gtk 2.10 + gail 1.9 (and recompiling gtkhml3.8 against the new libgail) fixes the crash in my test case. Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/
Processed (with 1 errors): Re: Bug#378346: libgail crashes on alpha
Processing commands for [EMAIL PROTECTED]: forwarded 378346 http://bugzilla.gnome.org/show_bug.cgi?id=325759 Bug#378346: libgail-dev: gnucash crashes in libgail on alpha Noted your statement that Bug has been forwarded to http://bugzilla.gnome.org/show_bug.cgi?id=325759. tags = 378346 fixed-upstream patch Unknown command or malformed arguments to command. thanks Stopping processing here. Please contact me if you need assistance. Debian bug tracking system administrator (administrator, Debian Bugs database) -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Bug#378346: libgail crashes on alpha
forwarded 378346 http://bugzilla.gnome.org/show_bug.cgi?id=325759 tags = 378346 fixed-upstream patch thanks On Sun, Nov 05, 2006 at 03:49:01AM -0800, Steve Langasek wrote: On Mon, Oct 16, 2006 at 04:42:30PM +0200, Loïc Minier wrote: I suggest you install libgail-dbg, and libgtk2.0-0-dbg to get a nicer backtrace. Could you try rebuilding against Gtk 2.10 / Gail 1.9 from experimental? This would permit isolating the fix and perhaps backporting it if it's fixed in 1.9. Installing gtk 2.10 + gail 1.9 (and recompiling gtkhml3.8 against the new libgail) fixes the crash in my test case. And, here's the isolated fix for the bug. Thanks, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/ diff -u gail-1.8.11/debian/changelog gail-1.8.11/debian/changelog --- gail-1.8.11/debian/changelog +++ gail-1.8.11/debian/changelog @@ -1,3 +1,12 @@ +gail (1.8.11-2.1) unstable; urgency=high + + * Non-maintainer upload. + * High-urgency upload for RC bugfix. + * Backport patch from gail 1.9.3 to fix upstream bug #325759; +closes: #378346. + + -- Steve Langasek [EMAIL PROTECTED] Sun, 5 Nov 2006 05:31:59 -0800 + gail (1.8.11-2) unstable; urgency=low * Bump build-deps to libgtk2.0-dev = 2.8.17-1, liborbit2-dev = 1:2.14.0-1, only in patch2: unchanged: --- gail-1.8.11.orig/gail/gailtreeview.c +++ gail-1.8.11/gail/gailtreeview.c @@ -336,6 +336,7 @@ GList** list, gboolean live_only); static AtkObject * get_header_from_column (GtkTreeViewColumn *tv_col); +static gboolean idle_garbage_collect_cell_data (gpointer data); static gboolean garbage_collect_cell_data (gpointer data); static GailWidgetClass *parent_class = NULL; @@ -3489,7 +3490,7 @@ if (!gailview-garbage_collection_pending) { gailview-garbage_collection_pending = TRUE; gailview-idle_garbage_collect_id = - g_idle_add (garbage_collect_cell_data, gailview); + g_idle_add (idle_garbage_collect_cell_data, gailview); } } } @@ -3595,6 +3596,32 @@ } static gboolean +idle_garbage_collect_cell_data (gpointer data) +{ + GailTreeView *tree_view; + + GDK_THREADS_ENTER (); + g_assert (GAIL_IS_TREE_VIEW (data)); + tree_view = (GailTreeView *)data; + + /* this is the idle handler (only one instance allowed), so + * we can safely delete it. + */ + tree_view-garbage_collection_pending = FALSE; + tree_view-idle_garbage_collect_id = 0; + + tree_view-garbage_collection_pending = garbage_collect_cell_data (data); + + GDK_THREADS_LEAVE (); + + /* N.B.: if for some reason another handler has re-enterantly been queued + * while this handler was being serviced, it has its own gsource, therefore this handler + * should always return FALSE. + */ + return FALSE; +} + +static gboolean garbage_collect_cell_data (gpointer data) { GailTreeView *tree_view; @@ -3606,7 +3633,11 @@ temp_list = g_list_copy (tree_view-cell_data); tree_view-garbage_collection_pending = FALSE; - tree_view-idle_garbage_collect_id = 0; + if (tree_view-idle_garbage_collect_id != 0) + { + g_source_remove (tree_view-idle_garbage_collect_id); + tree_view-idle_garbage_collect_id = 0; + } /* Must loop through them all */ while (temp_list != NULL) @@ -4020,7 +4051,7 @@ if (!cell_info-view-garbage_collection_pending) { cell_info-view-garbage_collection_pending = TRUE; cell_info-view-idle_garbage_collect_id = - g_idle_add (garbage_collect_cell_data, cell_info-view); + g_idle_add (idle_garbage_collect_cell_data, cell_info-view); } } }
Bug#378346: libgail crashes on alpha
On Mon, Oct 16, 2006 at 04:42:30PM +0200, Loïc Minier wrote: On Thu, Jul 20, 2006, Steve Langasek wrote: At the very least, I would appreciate it if you could verify whether the bug is reproducible or not. See bug #378346 for the bug report. Here is the error that triggers the abort: ** ERROR **: file gailtreeview.c: line 3604 (garbage_collect_cell_data): assertion failed: (GAIL_IS_TREE_VIEW (data)) aborting... And here is the backtrace (stripped): #9 0x02000202403c in g_logv () from /usr/lib/libglib-2.0.so.0 #10 0x020002024084 in g_log () from /usr/lib/libglib-2.0.so.0 #11 0x020002024114 in g_assert_warning () from /usr/lib/libglib-2.0.so.0 #12 0x020002ee5c40 in gail_tree_view_new () from /usr/lib/gtk-2.0/modules/libgail.so Will try to get libgail.so rebuilt to take a look. I suggest you install libgail-dbg, and libgtk2.0-0-dbg to get a nicer backtrace. Could you try rebuilding against Gtk 2.10 / Gail 1.9 from experimental? This would permit isolating the fix and perhaps backporting it if it's fixed in 1.9. First, here's a fresh backtrace from unstable with libgail-dbg and libgtk2.0-0-dbg: (gdb) bt #0 0x020002187a78 in kill () from /lib/libc.so.6.1 #1 0x020001e735d0 in pthread_kill () from /lib/libpthread.so.0 #2 0x020001e73638 in raise () from /lib/libpthread.so.0 #3 0x0200021877e4 in raise () from /lib/libc.so.6.1 #4 0x020002188db0 in abort () from /lib/libc.so.6.1 #5 0x020001fbe588 in g_logv () from /usr/lib/libglib-2.0.so.0 #6 0x020001fbe5d4 in g_log () from /usr/lib/libglib-2.0.so.0 #7 0x020001fbe66c in g_assert_warning () from /usr/lib/libglib-2.0.so.0 #8 0x020002e69398 in garbage_collect_cell_data (data=0x120919480) at gailtreeview.c:3604 #9 0x020001fb047c in g_source_is_destroyed () from /usr/lib/libglib-2.0.so.0 #10 0x020001fb2e34 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #11 0x020001fb6e14 in g_main_context_check () from /usr/lib/libglib-2.0.so.0 #12 0x020001fb7354 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0 #13 0x02000145b698 in IA__gtk_main () at gtkmain.c:1003 #14 0x0237f4e0 in gnc_ui_start_event_loop () from /usr/lib/gnucash/gnucash/libgncmod-gnome-utils.so.0 #15 0x0001200034e0 in _start () (gdb) Steps to reproduce: file-new-new file, enable 'business accounts' in addition to 'common accounts', and complete the setup. The bug is not reproducible on amd64 following these steps, so it doesn't appear to be a simple 64-bit problem, unfortunately. I'm going to give the experimental gtk/gail a try, but it'll be a while before I'm there; will send another mail with the results. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/
Bug#378346: libgail crashes on alpha
Hi, On Thu, Jul 20, 2006, Steve Langasek wrote: At the very least, I would appreciate it if you could verify whether the bug is reproducible or not. See bug #378346 for the bug report. Here is the error that triggers the abort: ** ERROR **: file gailtreeview.c: line 3604 (garbage_collect_cell_data): assertion failed: (GAIL_IS_TREE_VIEW (data)) aborting... And here is the backtrace (stripped): #9 0x02000202403c in g_logv () from /usr/lib/libglib-2.0.so.0 #10 0x020002024084 in g_log () from /usr/lib/libglib-2.0.so.0 #11 0x020002024114 in g_assert_warning () from /usr/lib/libglib-2.0.so.0 #12 0x020002ee5c40 in gail_tree_view_new () from /usr/lib/gtk-2.0/modules/libgail.so Will try to get libgail.so rebuilt to take a look. I suggest you install libgail-dbg, and libgtk2.0-0-dbg to get a nicer backtrace. Could you try rebuilding against Gtk 2.10 / Gail 1.9 from experimental? This would permit isolating the fix and perhaps backporting it if it's fixed in 1.9. Bye, -- Loïc Minier [EMAIL PROTECTED]