Re: Gtk::Widget::on_hide
- From: John Emmas <johne53 tiscali co uk>
- Cc: gtkmm-list gnome org
- Subject: Re: Gtk::Widget::on_hide
- Date: Thu, 21 Nov 2013 10:08:04 +0000
On 21/11/2013 09:17, Kjell Ahlstedt wrote:
Getting back to
https://mail.gnome.org/archives/gtkmm-list/2013-November/msg00043.html, you
say there, before you applied any patches, that gobject_ is set to 0
in Gtk::Object::disconnect_cpp_wrapper(), and then
Gtk::Widget::on_unrealize() is called, and the program crashes there,
because gobject_ == 0. But when disconnect_cpp_wrapper() sets gobject_
= 0, it also removes Glib::quark_ with
g_object_steal_qdata((GObject*)gobj(), Glib::quark_). If that's done,
on_unrealize() won't be called. See also
https://mail.gnome.org/archives/gtkmm-list/2013-November/msg00045.html.
Thanks Kjell, I now understand what you meant when you said that
'steal_qdata' and 'set_qdata' weren't doing what they're supposed to
do. It's academic now of course - but before I applied the patch, you
must have been right with that assertion.
The most puzzling thing is why you are (as far as I know) the only one
who have reported crashes with even the shortest possible gtkmm
applications. Your problems are so severe that I would expect
complaints from most affected users of gtkmm.
The only explanation I can think of is that something changed very very
recently so most users haven't had time to encounter it yet. The main
point is that it does seem likely that those patches are needed in 2.24.4.
As it happens I did encounter one snag while applying the patches but
rather than describe it here I'll update the bug report later, so it's
in the right place. Thanks for all the effort you've put into
investigating this problem.
John
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]