Re: Gtk::Widget::on_hide
- From: John Emmas <johne53 tiscali co uk>
- Cc: gtkmm-list gnome org
- Subject: Re: Gtk::Widget::on_hide
- Date: Wed, 20 Nov 2013 15:05:36 +0000
On 20/11/2013 08:43, Kjell Ahlstedt wrote:
Calling virtual functions from constructors and destructors is best
avoided. It's not always easy to guess which override will be called.
Agreed Kjell. I just wanted to draw it to your attention that this was
happening. I've done much more testing today and I'm satisfied that
applying those patches from yesterday has fixed the crashing issue.
Only one thing remains puzzling me...
On 19/11/2013 15:48, Kjell Ahlstedt wrote:
You mentioned in
https://mail.gnome.org/archives/gtkmm-list/2013-November/msg00022.html
that you have "glibmm_Glib::quark_" in the list of GQuarks, when I
have "glibmm_Glib::quark_cpp_wrapper_deleted_". It's as if
g_object_steal_qdata((GObject*)gobj(), Glib::quark_);
g_object_set_qdata((GObject*)gobj(),
Glib::quark_cpp_wrapper_deleted_, (gpointer)true);
in Gtk::Object::disconnect_cpp_wrapper() don't do what they should.
Confusing!
What's confusing to me is that your code ever reaches those two lines!
When I close my test window (MyDialog), the function
Object::destroy_notify_() invariably gets called before
Object::disconnect_cpp_wrapper(). Since Object::destroy_notify_() sets
'gobject_' to NULL, I don't see how those lines can ever get reached...
??? Should it be setting 'gobject_ to NULL or is there a bit of the
patch missing?
Apart from that little quirk it's all much more solid today than it was
yesterday.
John
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]