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 364946 - crash in gtk_tree_model: Adding new account, or entering a transfer, or other actions
crash in gtk_tree_model: Adding new account, or entering a transfer, or other...
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: GtkTreeView
2.10.x
Other All
: High critical
: ---
Assigned To: gtktreeview-bugs
gtktreeview-bugs
: 351371 370344 371086 374345 376153 377265 378143 378985 379271 380580 380682 381641 381676 383806 384881 385191 385549 386713 386895 387515 388973 389549 389847 391087 391189 391685 391951 392600 392775 393682 393691 393854 396715 399453 400618 401274 401942 401963 403971 404771 405228 405753 406755 407545 407725 407805 408443 409811 412236 412445 413295 413776 414303 414979 415148 417198 417519 419280 419328 419453 419959 420233 421641 428788 429648 431682 432817 443225 457460 460442 531091 (view as bug list)
Depends on:
Blocks: 405228
 
 
Reported: 2006-10-25 10:06 UTC by Eric Bair
Modified: 2008-05-05 13:46 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
40-liner to provoke the crash (1.07 KB, text/plain)
2007-02-27 03:30 UTC, Andreas Köhler
  Details
quick-n-dirty patch (1.45 KB, patch)
2007-02-27 22:49 UTC, Kristian Rietveld
needs-work Details | Review
patch as committed (2.23 KB, patch)
2007-03-10 17:30 UTC, Kristian Rietveld
committed Details | Review

Description Eric Bair 2006-10-25 10:06:50 UTC
Steps to reproduce:
1. Start gnucash.
2. Select Tools->HBCI Setup
3. Click "Forward" twice.
4. Match a new ofx direct connect account to one of my existing gnucash accounts
5. Click "Forward" again.
6. Click "Apply."


Stack trace:
(gdb) continue
Continuing.
3:2006/10/25 02-57-25:(null)(3228):provider.c:  194: Deinit done
on_accountlist_select_row: Selected hbci_acc id XXXXXXXXXXXX2693; old_value (nil) 

Gtk-ERROR **: file gtktreemodelsort.c: line 2293 (gtk_tree_model_sort_clear_cache_helper): assertion failed: (level != NULL)
aborting...

Program received signal SIGABRT, Aborted.
[Switching to Thread -1209211184 (LWP 3228)]
0x0027d402 in __kernel_vsyscall ()
(gdb) thread apply all bt

Thread 1 (Thread -1209211184 (LWP 3228))

  • #0 __kernel_vsyscall
  • #1 raise
    from /lib/libc.so.6
  • #2 abort
    from /lib/libc.so.6
  • #3 g_logv
    from /lib/libglib-2.0.so.0
  • #4 g_log
    from /lib/libglib-2.0.so.0
  • #5 g_assert_warning
    from /lib/libglib-2.0.so.0
  • #6 gtk_tree_model_filter_convert_child_iter_to_iter
    from /usr/lib/libgtk-x11-2.0.so.0
  • #7 gtk_tree_model_filter_convert_child_iter_to_iter
    from /usr/lib/libgtk-x11-2.0.so.0
  • #8 gtk_tree_model_sort_clear_cache
    from /usr/lib/libgtk-x11-2.0.so.0
  • #9 gtk_tree_model_sort_new_with_model
    from /usr/lib/libgtk-x11-2.0.so.0
  • #10 gtk_marshal_BOOLEAN__VOID
    from /usr/lib/libgtk-x11-2.0.so.0
  • #11 g_closure_invoke
    from /lib/libgobject-2.0.so.0
  • #12 g_signal_override_class_closure
    from /lib/libgobject-2.0.so.0
  • #13 g_signal_emit_valist
    from /lib/libgobject-2.0.so.0
  • #14 g_signal_emit
    from /lib/libgobject-2.0.so.0
  • #15 gtk_tree_model_row_changed
    from /usr/lib/libgtk-x11-2.0.so.0
  • #16 gtk_tree_model_filter_convert_child_iter_to_iter
    from /usr/lib/libgtk-x11-2.0.so.0
  • #17 gtk_marshal_BOOLEAN__VOID
    from /usr/lib/libgtk-x11-2.0.so.0
  • #18 g_closure_invoke
    from /lib/libgobject-2.0.so.0
  • #19 g_signal_override_class_closure
    from /lib/libgobject-2.0.so.0
  • #20 g_signal_emit_valist
    from /lib/libgobject-2.0.so.0
  • #21 g_signal_emit
    from /lib/libgobject-2.0.so.0
  • #22 gtk_tree_model_row_changed
    from /usr/lib/libgtk-x11-2.0.so.0
  • #23 propagate_change
    at gnc-tree-model-account.c line 1452
  • #24 gnc_tree_model_account_event_handler
    at gnc-tree-model-account.c line 1561
  • #25 qof_event_generate_internal
    at qofevent.c line 247
  • #26 on_done
    at Account.c line 321
  • #27 qof_commit_edit_part2
    at qofutil.c line 321
  • #28 xaccAccountCommitEdit
    at Account.c line 406
  • #29 gnc_hbci_set_account_accountid
    at gnc-hbci-kvp.c line 68
  • #30 accounts_clear_kvp
    at druid-hbci-utils.c line 74
  • #31 xaccGroupForEachAccount
    at Group.c line 1244
  • #32 xaccGroupForEachAccount
    at Group.c line 1250
  • #33 xaccGroupForEachAccount
    at Group.c line 1250
  • #34 accounts_save_kvp
    at druid-hbci-utils.c line 89
  • #35 on_finish
    at druid-hbci-initial.c line 302
  • #36 g_cclosure_marshal_VOID__OBJECT
    from /lib/libgobject-2.0.so.0
  • #37 g_closure_invoke
    from /lib/libgobject-2.0.so.0
  • #38 g_signal_override_class_closure
    from /lib/libgobject-2.0.so.0
  • #39 g_signal_emit_valist
    from /lib/libgobject-2.0.so.0
  • #40 g_signal_emit
    from /lib/libgobject-2.0.so.0
  • #41 gnome_druid_page_finish
    from /usr/lib/libgnomeui-2.so.0
  • #42 gnome_druid_new
    from /usr/lib/libgnomeui-2.so.0
  • #43 g_cclosure_marshal_VOID__VOID
    from /lib/libgobject-2.0.so.0
  • #44 g_closure_invoke
    from /lib/libgobject-2.0.so.0
  • #45 g_signal_override_class_closure
    from /lib/libgobject-2.0.so.0
  • #46 g_signal_emit_valist
    from /lib/libgobject-2.0.so.0
  • #47 g_signal_emit
    from /lib/libgobject-2.0.so.0
  • #48 gtk_button_clicked
    from /usr/lib/libgtk-x11-2.0.so.0
  • #49 gtk_button_set_alignment
    from /usr/lib/libgtk-x11-2.0.so.0
  • #50 g_cclosure_marshal_VOID__VOID
    from /lib/libgobject-2.0.so.0
  • #51 g_value_set_static_boxed
    from /lib/libgobject-2.0.so.0
  • #52 g_closure_invoke
    from /lib/libgobject-2.0.so.0
  • #53 g_signal_override_class_closure
    from /lib/libgobject-2.0.so.0
  • #54 g_signal_emit_valist
    from /lib/libgobject-2.0.so.0
  • #55 g_signal_emit
    from /lib/libgobject-2.0.so.0
  • #56 gtk_button_released
    from /usr/lib/libgtk-x11-2.0.so.0
  • #57 gtk_button_released
    from /usr/lib/libgtk-x11-2.0.so.0
  • #58 gtk_marshal_BOOLEAN__VOID
    from /usr/lib/libgtk-x11-2.0.so.0
  • #59 g_value_set_static_boxed
    from /lib/libgobject-2.0.so.0
  • #60 g_closure_invoke
    from /lib/libgobject-2.0.so.0
  • #61 g_signal_override_class_closure
    from /lib/libgobject-2.0.so.0
  • #62 g_signal_emit_valist
    from /lib/libgobject-2.0.so.0
  • #63 g_signal_emit
    from /lib/libgobject-2.0.so.0
  • #64 gtk_widget_get_default_style
    from /usr/lib/libgtk-x11-2.0.so.0
  • #65 gtk_propagate_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #66 gtk_main_do_event
    from /usr/lib/libgtk-x11-2.0.so.0
  • #67 gdk_add_client_message_filter
    from /usr/lib/libgdk-x11-2.0.so.0
  • #68 g_main_context_dispatch
    from /lib/libglib-2.0.so.0
  • #69 g_main_context_check
    from /lib/libglib-2.0.so.0
  • #70 g_main_loop_run
    from /lib/libglib-2.0.so.0
  • #71 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #72 gnc_ui_start_event_loop
    at gnc-gnome-utils.c line 368
  • #73 inner_main
    at gnucash-bin.c line 479
  • #74 scm_boot_guile
    from /usr/lib/libguile.so.17
  • #75 scm_char_upcase
    from /usr/lib/libguile.so.17
  • #76 scm_c_catch
    from /usr/lib/libguile.so.17
  • #77 scm_i_with_continuation_barrier
    from /usr/lib/libguile.so.17
  • #78 scm_c_with_continuation_barrier
  • #79 scm_i_with_guile_and_parent
    from /usr/lib/libguile.so.17
  • #80 scm_with_guile
    from /usr/lib/libguile.so.17
  • #81 scm_boot_guile
    from /usr/lib/libguile.so.17
  • #82 main
    at gnucash-bin.c line 515

Other information:
If a developer wants a copy of the data file that's causing the crash, send me an e-mail and I'll send it to you.  (I don't want to attach my personal financial data for everyone to see.)
Comment 1 Eric Bair 2006-10-27 07:44:29 UTC
I found a really strange workaround for this issue.  The crash seems to occur only if I try to match the ofx direct connect account to an existing gnucash account.  If I create a new account rather than matching it to an existing account, then it doesn't crash.  Just an FYI.
Comment 2 Christian Stimming 2006-10-30 10:04:41 UTC
Which version of gtk/glib is this?
Comment 3 Eric Bair 2006-10-30 10:13:25 UTC
$ rpm -q gtk2
gtk2-2.10.4-4.fc6
$ rpm -q glib
glib-1.2.10-23.fc6
Comment 4 Christian Stimming 2006-10-30 10:28:34 UTC
Version of "glib2"? 

A slightly similar crash occurs in bug#351371 - well, similar in that I have no idea of what is going on, and that it's rather related to the gtk_tree_model instead of aqbanking or gnucash peculiarities. 

The Aqbanking-Import part ends at #28 by calling xaccAccountCommitEdit(); I don't see whether anything were wrong here. Well, just for information: Which windows with the account hierarchy were open when the crash occurred? Probably the account chooser from the HBCI setup window, and probably also one general account hierarchy tab/window.
Comment 5 Eric Bair 2006-10-30 10:57:07 UTC
$ rpm -q glib2
glib2-2.12.3-2.fc6

Yes, the only windows that were open were the HBCI setup window and the general account hierarchy tab/window.

I guess I should mention that in the past, I managed to match a new ofx direct connect account to an existing gnucash account without any problems.  I only got this crash when I tried to do it again this past week after I got a new credit card.  I also upgraded from Fedora Core 5 to Fedora Core 6 this past week, so I think you might be right that there's something strange in the latest versions of glib and/or gtk.
Comment 6 Christian Stimming 2006-11-02 10:57:00 UTC
Can you additionally check whether bug#351371#c11 occurs on your system as well, i.e. can you follow the instructions for reproducing the crash and see what happens? Thanks.
Comment 7 André Klapper 2006-11-04 09:45:12 UTC
*** Bug 370344 has been marked as a duplicate of this bug. ***
Comment 8 Christian Stimming 2006-11-04 17:07:57 UTC
Note that this supposed "duplicate" bug#370344 talks about a completely different user action - but the backtrace indeed looks strikingly similar. One more reason to this is is due to some gtk issues instead of OFX or gnucash issue. @tsang_cn: Can you report your version numbers of glib2 and gtk? That might be helpful. Thanks.
Comment 9 C. N. Tsang 2006-11-06 03:31:43 UTC
The problem as described in bug#370344 occurs when I have upgraded my system from Fedora Core 5 to Fedora Core 6.  After I have saved my guncash file once, the problem does not occurs again.

The version of glib2 is glib2-2.12.3-2.fc6
The version of gtk is gtk+-1.2.10-55.fc6 and gtk2-2.10.4-4.fc6

Thanks.
Comment 10 Christian Stimming 2006-11-13 10:24:57 UTC
*** Bug 374345 has been marked as a duplicate of this bug. ***
Comment 11 Christian Stimming 2006-11-17 08:48:57 UTC
*** Bug 376153 has been marked as a duplicate of this bug. ***
Comment 12 Christian Stimming 2006-11-17 08:57:42 UTC
bug#376153 has the same failed assertion in gtktreemodelsort.c:2293; the user action was "add a new transaction" (it's unclear in which way the transaction was entered, though), similarly to bug#370344 .

bug#351371 has a slightly different failed assertion in gtktreemodelsort.c:2419 although this might still be the same bug and these are only different gtk version numbers.
Comment 13 André Klapper 2006-11-20 09:45:58 UTC
*** Bug 377265 has been marked as a duplicate of this bug. ***
Comment 14 André Klapper 2006-11-20 09:47:10 UTC
gtktreemodelsort.c:2293 is also mentioned in bug 377265.

at least confirming as per duplicates, feel free to move this to gtk+.
Comment 15 Christian Stimming 2006-11-22 15:57:25 UTC
*** Bug 378143 has been marked as a duplicate of this bug. ***
Comment 16 Christian Stimming 2006-11-25 09:02:24 UTC
*** Bug 378985 has been marked as a duplicate of this bug. ***
Comment 17 Christian Stimming 2006-11-26 20:42:13 UTC
*** Bug 379271 has been marked as a duplicate of this bug. ***
Comment 18 André Klapper 2006-11-30 03:21:10 UTC
*** Bug 380580 has been marked as a duplicate of this bug. ***
Comment 19 André Klapper 2006-11-30 03:21:16 UTC
*** Bug 380682 has been marked as a duplicate of this bug. ***
Comment 20 André Klapper 2006-12-03 00:50:28 UTC
*** Bug 381641 has been marked as a duplicate of this bug. ***
Comment 21 André Klapper 2006-12-03 00:50:30 UTC
*** Bug 381676 has been marked as a duplicate of this bug. ***
Comment 22 Christian Stimming 2006-12-10 12:33:28 UTC
*** Bug 383806 has been marked as a duplicate of this bug. ***
Comment 23 Reinout van Schouwen 2006-12-12 12:37:05 UTC
*** Bug 384881 has been marked as a duplicate of this bug. ***
Comment 24 Reinout van Schouwen 2006-12-12 12:38:01 UTC
Moving to GTK+.
Comment 25 Andreas Köhler 2006-12-13 08:02:13 UTC
*** Bug 385191 has been marked as a duplicate of this bug. ***
Comment 26 Andreas Köhler 2006-12-13 22:48:56 UTC
*** Bug 385549 has been marked as a duplicate of this bug. ***
Comment 27 Christian Stimming 2006-12-17 21:14:35 UTC
*** Bug 386713 has been marked as a duplicate of this bug. ***
Comment 28 Christian Stimming 2006-12-17 21:15:13 UTC
*** Bug 386895 has been marked as a duplicate of this bug. ***
Comment 29 Christian Stimming 2006-12-19 15:49:06 UTC
*** Bug 387515 has been marked as a duplicate of this bug. ***
Comment 30 Andreas Köhler 2006-12-26 10:31:10 UTC
*** Bug 389549 has been marked as a duplicate of this bug. ***
Comment 31 Kristian Rietveld 2006-12-26 20:40:37 UTC
Is a11y enabled in these cases?  If yes, does the problem also exist if a11y is turned off?

This stack trace and the traces in the duplicates I've seen don't make much sense (gtk_tree_model_sort_new_with_model() does not call the cache cleaning code, the filter's iter conversion code does not call _row_changed() nor g_assert_warning().)
Comment 32 Christian Stimming 2007-01-02 10:07:25 UTC
*** Bug 388973 has been marked as a duplicate of this bug. ***
Comment 33 Christian Stimming 2007-01-02 10:07:32 UTC
*** Bug 389847 has been marked as a duplicate of this bug. ***
Comment 34 Christian Stimming 2007-01-02 10:07:42 UTC
*** Bug 391189 has been marked as a duplicate of this bug. ***
Comment 35 Christian Stimming 2007-01-02 10:07:50 UTC
*** Bug 391685 has been marked as a duplicate of this bug. ***
Comment 36 Christian Stimming 2007-01-02 10:08:33 UTC
*** Bug 391087 has been marked as a duplicate of this bug. ***
Comment 37 Christian Stimming 2007-01-03 08:49:21 UTC
*** Bug 391951 has been marked as a duplicate of this bug. ***
Comment 38 Matthias Clasen 2007-01-03 18:12:31 UTC
Setting to NEEDINFO until somebody answers Kris' question from comment 31.
Comment 39 Michael Wise 2007-01-03 22:06:18 UTC
I reported bug #381641.  I don't have a11y enabled.
Comment 40 Christian Stimming 2007-01-04 10:10:07 UTC
(In reply to comment #31)
> This stack trace and the traces in the duplicates I've seen don't make much
> sense (gtk_tree_model_sort_new_with_model() does not call the cache cleaning
> code, the filter's iter conversion code does not call _row_changed() nor
> g_assert_warning().)

I'm sorry, but I cannot provide additional information as well. We (the gnucash devs) are getting swamped by these bug-buddy reports and obviously they are all caused by the same or similar crashes, but there is (too) little additional information that we get as well. Also, none of the gnucash developers has been able to reproduce any of these crashes. The only backtrace with debugging information that I've seen was in bug#351371, but it's a different trace.

@Michael Wise: Can you install the gnucash-debuginfo and gtk2-debuginfo package (if such thing exists) and/or try to install gnucash from source with --enable-debug, and see whether you can reproduce that crash? We would definitely need the stack trace with full debug info...
Comment 41 Christian Stimming 2007-01-04 10:10:37 UTC
*** Bug 392600 has been marked as a duplicate of this bug. ***
Comment 42 Christian Stimming 2007-01-04 16:33:34 UTC
*** Bug 392775 has been marked as a duplicate of this bug. ***
Comment 43 Christian Stimming 2007-01-04 16:35:53 UTC
(In reply to comment #31)
> the filter's iter conversion code does not call _row_changed() nor
> g_assert_warning().)

Well, the point of the g_assert_warning is shown clearly in the command line messages: 

file gtktreemodelsort.c: line 2293 (gtk_tree_model_sort_clear_cache_helper): assertion failed: (level != NULL)
aborting...

This function name just doesn't appear in the backtrace.
Comment 44 Michael Wise 2007-01-07 02:19:42 UTC
I haven't had it crash since the bug report I filed. I've gone ahead and installed the debuginfo packages just in case and I've also compiled from source and run it a little.  I haven't got it to crash either.  I'm running update FC6
Comment 45 Christian Stimming 2007-01-08 10:12:28 UTC
*** Bug 393682 has been marked as a duplicate of this bug. ***
Comment 46 Christian Stimming 2007-01-08 10:12:45 UTC
*** Bug 393691 has been marked as a duplicate of this bug. ***
Comment 47 Christian Stimming 2007-01-08 10:13:00 UTC
*** Bug 393854 has been marked as a duplicate of this bug. ***
Comment 48 Christian Stimming 2007-01-22 16:44:00 UTC
A somehow similar crash is in bug#398779 and it appears only if accessibility is enabled, not when it is disabled.
Comment 49 Christian Stimming 2007-01-23 09:15:39 UTC
*** Bug 399453 has been marked as a duplicate of this bug. ***
Comment 50 Christian Stimming 2007-01-23 13:50:13 UTC
*** Bug 371086 has been marked as a duplicate of this bug. ***
Comment 51 Christian Stimming 2007-01-25 16:29:13 UTC
*** Bug 400618 has been marked as a duplicate of this bug. ***
Comment 52 André Klapper 2007-01-29 02:28:52 UTC
*** Bug 401274 has been marked as a duplicate of this bug. ***
Comment 53 André Klapper 2007-01-29 02:29:12 UTC
*** Bug 396715 has been marked as a duplicate of this bug. ***
Comment 54 Christian Stimming 2007-01-29 09:59:18 UTC
*** Bug 401942 has been marked as a duplicate of this bug. ***
Comment 55 Christian Stimming 2007-01-29 10:00:55 UTC
*** Bug 401963 has been marked as a duplicate of this bug. ***
Comment 56 Marc-Andre Lureau 2007-02-05 23:11:38 UTC
*** Bug 404771 has been marked as a duplicate of this bug. ***
Comment 57 Kristian Rietveld 2007-02-06 21:00:47 UTC
As far as I can see #398779 and this one are unrelated ...
Comment 58 Christian Stimming 2007-02-09 10:04:11 UTC
*** Bug 405753 has been marked as a duplicate of this bug. ***
Comment 59 Josh Sled 2007-02-16 00:28:51 UTC
*** Bug 407725 has been marked as a duplicate of this bug. ***
Comment 60 Josh Sled 2007-02-16 00:30:03 UTC
*** Bug 407805 has been marked as a duplicate of this bug. ***
Comment 61 Josh Sled 2007-02-16 00:30:14 UTC
*** Bug 408443 has been marked as a duplicate of this bug. ***
Comment 62 Christian Stimming 2007-02-16 11:08:34 UTC
*** Bug 407545 has been marked as a duplicate of this bug. ***
Comment 63 Christian Stimming 2007-02-20 09:01:06 UTC
bug#405228 has interesting additional explanations and confirms again this crash disappears with disabled accessibility.
Comment 64 Andreas Köhler 2007-02-21 08:41:35 UTC
FYI,
http://svn.gnome.org/viewcvs/gtk%2B/trunk/gtk/gtktreemodelsort.c?r1=16598&r2=16599&view=patch
seems to fix a crash in my small test scenario.  It still criticizes that "gtk_tree_model_sort_real_unref_node: assertion `elt->ref_count > 0' failed", but I have not build from trunk yet, but only patched 2.10.9.  I suppose the solution is to be found in a sufficiently large neighborhood of that.

My scenario (some things may be unnecessary, but never change a crashing system):
* download http://gd.tuwien.ac.at/gnu/gnucash/test-data/huge_test_file.bz2
* enable a11n
* expand all children of some account with the help of Shift+KP_Plus
* Tools -> General Ledger
* View -> Filter by..., Show All
* <Tab><Tab> to description
* enter T327
* press <Tab> to crash...

PS: I cannot remember, I probably trimmed the file down a bit a while ago, so get yourself a cup of coffee...
Comment 65 Christian Stimming 2007-02-26 08:44:55 UTC
*** Bug 409811 has been marked as a duplicate of this bug. ***
Comment 66 Josh Sled 2007-02-27 02:47:33 UTC
*** Bug 412445 has been marked as a duplicate of this bug. ***
Comment 67 Andreas Köhler 2007-02-27 03:30:56 UTC
Created attachment 83439 [details]
40-liner to provoke the crash

OK, the current gtk+ trunk does not crash, but only print above warning.

See the attachment for a small test case.  No accessibility needed.
Comment 68 Christian Stimming 2007-02-27 10:11:50 UTC
Congrats Andreas! How did you manage to find this example? :-)

The testcase of comment#67 will crash on a stock opensuse10.2 system, gtk-2.10.6, and gives

Gtk-ERROR **: file gtktreemodelsort.c: line 2293 (gtk_tree_model_sort_clear_cache_helper): assertion failed: (level != NULL)
aborting...
Comment 69 Christian Stimming 2007-02-27 10:18:37 UTC
*** Bug 406755 has been marked as a duplicate of this bug. ***
Comment 70 Christian Stimming 2007-02-27 10:20:07 UTC
*** Bug 405228 has been marked as a duplicate of this bug. ***
Comment 71 Kristian Rietveld 2007-02-27 22:49:00 UTC
(In reply to comment #67)
> Created an attachment (id=83439) [edit]
> 40-liner to provoke the crash

Thanks a lot for this testcase!  I still wonder how you managed to come up with it, but it really, really helps debugging :)

It seems to be a nasty problem in the zero ref counting, where levels with a referenced node somewhere in their child levels are blown away.  I will attach a quick and dirty fix which makes the issue disappear.  I need some more time to think about a proper fix, there should be a better solution than just referencing all parent levels/nodes (however, it does make sense somewhere).
Comment 72 Kristian Rietveld 2007-02-27 22:49:36 UTC
Created attachment 83502 [details] [review]
quick-n-dirty patch
Comment 73 Andreas Köhler 2007-03-01 09:27:47 UTC
*** Bug 403971 has been marked as a duplicate of this bug. ***
Comment 74 Andreas Köhler 2007-03-01 09:29:10 UTC
*** Bug 413295 has been marked as a duplicate of this bug. ***
Comment 75 Andreas Köhler 2007-03-01 09:32:33 UTC
*** Bug 351371 has been marked as a duplicate of this bug. ***
Comment 76 Johannes Engel 2007-03-01 10:56:54 UTC
Thanks a lot, Kristian, that patch helps for the moment. Great! :)
Comment 77 Andreas Köhler 2007-03-02 08:47:17 UTC
*** Bug 413776 has been marked as a duplicate of this bug. ***
Comment 78 Christian Stimming 2007-03-02 21:52:25 UTC
*** Bug 412236 has been marked as a duplicate of this bug. ***
Comment 79 Andreas Köhler 2007-03-03 20:32:38 UTC
*** Bug 414303 has been marked as a duplicate of this bug. ***
Comment 80 Andreas Köhler 2007-03-05 18:22:56 UTC
*** Bug 414979 has been marked as a duplicate of this bug. ***
Comment 81 Matthias Clasen 2007-03-05 19:17:57 UTC
Kris, do you consider your quick-and-dirty patch a candidate for 2.10.10 ?
Comment 82 Kristian Rietveld 2007-03-05 19:25:08 UTC
Not 100% sure yet.  Maybe we should put it in 2.10.10, it shouldnt hurt much and we can fix it property in 2.12.
Comment 83 Christian Stimming 2007-03-06 08:39:15 UTC
*** Bug 415148 has been marked as a duplicate of this bug. ***
Comment 84 Kristian Rietveld 2007-03-10 17:30:26 UTC
Created attachment 84351 [details] [review]
patch as committed

On a second thought I decided that reffing the parent elements of an element actually makes a lot of sense :)  I reworked the patch to look a little nicer and committed.
Comment 85 Kristian Rietveld 2007-03-10 17:32:06 UTC
gtk-2-10 also needed the zero refcounting clean ups/fixes which have been in trunk for a long while already (but always hesitated to merge to 2-10), which have also been committed today.

Thanks to everybody involved for the help with providing traces and testcases!
Comment 86 Josh Sled 2007-03-11 20:03:50 UTC
*** Bug 417198 has been marked as a duplicate of this bug. ***
Comment 87 Christian Stimming 2007-03-13 08:40:03 UTC
*** Bug 417519 has been marked as a duplicate of this bug. ***
Comment 88 Christian Kirbach 2007-03-17 10:43:14 UTC
*** Bug 419280 has been marked as a duplicate of this bug. ***
Comment 89 Josh Sled 2007-03-17 13:56:32 UTC
*** Bug 419328 has been marked as a duplicate of this bug. ***
Comment 90 Christian Kirbach 2007-03-17 18:32:49 UTC
*** Bug 419453 has been marked as a duplicate of this bug. ***
Comment 91 Josh Sled 2007-03-19 15:35:10 UTC
*** Bug 419959 has been marked as a duplicate of this bug. ***
Comment 92 Josh Sled 2007-03-19 20:08:34 UTC
*** Bug 420233 has been marked as a duplicate of this bug. ***
Comment 93 Josh Sled 2007-03-22 21:31:04 UTC
*** Bug 421641 has been marked as a duplicate of this bug. ***
Comment 94 Christian Stimming 2007-04-12 08:08:08 UTC
*** Bug 428788 has been marked as a duplicate of this bug. ***
Comment 95 Christian Stimming 2007-04-18 08:48:17 UTC
Just for completeness: The patch has been committed to gtk-trunk and back-ported to gtk_2_10 branch, so that it appears in gtk-2.10.10 (released around March 15th, 2007) and all higher version of gtk+.
Comment 96 Christian Stimming 2007-04-18 08:49:16 UTC
*** Bug 429648 has been marked as a duplicate of this bug. ***
Comment 97 Christian Stimming 2007-04-20 14:29:36 UTC
*** Bug 431682 has been marked as a duplicate of this bug. ***
Comment 98 Christian Stimming 2007-04-24 08:34:05 UTC
*** Bug 432817 has been marked as a duplicate of this bug. ***
Comment 99 Christian Kirbach 2007-06-02 14:15:10 UTC
*** Bug 443225 has been marked as a duplicate of this bug. ***
Comment 100 Josh Sled 2007-07-17 16:08:17 UTC
*** Bug 457460 has been marked as a duplicate of this bug. ***
Comment 101 Christian Stimming 2007-07-26 08:21:06 UTC
*** Bug 460442 has been marked as a duplicate of this bug. ***
Comment 102 Derek Atkins 2008-05-05 13:46:24 UTC
*** Bug 531091 has been marked as a duplicate of this bug. ***