Re: Is gtkmm deleting stuff it shouldn't be deleting ??



I've made some tests on a Linux system (Ubuntu 13.10) with gtk+ 2.24.22 and gtkmm 2.24.4 from tarballs, glib and glibmm fairly new versions from git's master branch. I get the same sequence of calls as you get, but no crash. gtk_widget_dispose() is called after gtk_widget_unrealize() in both cases. valgrind does not report any accesses to freed memory.

I'll make some more tests. It would be nice if I could reproduce the crash or some similar misbehaviour. I wonder if gtk+ behaves differently on Windows and Linux systems.

Kjell

2013-11-05 13:09, John Emmas skrev:
Again, just clutching at straws - but does this give us any clue...? Here's a partial sequence of function calls if I build my app using gtkmm. Here's the sequence I see after clicking to close my main window:-

    gtk_widget_destroy()
    g_object_run_dispose()
    g_object_run_dispose()
    gtk_widget_dispose()
    gtk_widget_unrealize()  // <--- crashes during unrealize

As near as I can make it, here's the same test app written to use plain GTK+

and here's the (subtlely different) sequence of function calls at closure:-

    gtk_widget_destroy()
    g_object_run_dispose()
    gtk_widget_dispose()
    gtk_widget_unrealize()  // <--- doesn't crash this time
    gtk_widget_dispose()

Not sure if that helps at all. I'd assume that the sequence should essentially be the same??

John




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]