Re: [gtkmm] Regressions in GTKMM after change to libsigc++-1.9.1X [Was: sigc::connection as member of widget]



On Friday 12 March 2004 16:45, Murray Cumming wrote:
> On Fri, 2004-03-12 at 14:43, Andris Pavenis wrote:
> > For comparisson I rebuilt gtkmm-2.3.5 once more (I have installed
> > glib-2.3.6, atk-1.6.0, pango-1.3.6, gtk+-2.3.6, sigc++-1.9.15,
> > glibmm-2.3.6, gcc-3.3.3, etc) and begin testing gtkmm examples. I was
> > able to reproduce this problem with gtkmm demos:
> >
> > -------------------------------------------------------------------------
> >------- demos/pixbuf-demo causes the same critcal error message.
>
> It works for me (I am using a cvs build, but it should be very similar).
> Does anyone else see this?

It happens when exitting from demo/pixbuf-demos. Rebuilt glib2, glibmm,
libsigc++ and gtk+ with debug info, so below is a better backtrace, which 
looks very strange as sigc::slot_base::disconnect () verifies  _rep and as 
result there this should not be 0 in next level (#3).  Didn't get too far 
attempting to debug pixbuf-demo.

Also in my applocations I have similar problems in destructors (eg. when 
trying to release Gtk::Window with delete) 

Which GCC version are You using? 

I used gcc-3.3.3 from Slackware-current.

Andris


andris geomets2:/tmp/gtkmm-2.3.5/demos$ gdb ./pixbuf-demo
GNU gdb 6.0.90
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i486-slackware-linux"...Using host libthread_db 
library "/lib/libthread_db.so.1".

(gdb) tb main
Breakpoint 1 at 0x804ecc0
(gdb) r
Starting program: /tmp/gtkmm-2.3.5/demos/pixbuf-demo
0x0804ecc0 in main ()
(gdb) b g_log
Breakpoint 2 at 0x40880f03: file gmessages.c, line 540.
(gdb) c
Continuing.

Breakpoint 2, g_log (log_domain=0x408a02c6 "GLib", log_level=1082786502,
    format=0x408a02c6 "GLib") at gmessages.c:540
540     gmessages.c: No such file or directory.
        in gmessages.c
(gdb) where
#0  g_log (log_domain=0x408a02c6 "GLib", log_level=1082786502,
    format=0x408a02c6 "GLib") at gmessages.c:540
#1  0x4087697e in g_source_destroy (source=0x0) at gmain.c:1004
#2  0x403461d3 in (anonymous namespace)::SourceConnectionNode::notify (
    data=0x80a8da8) at main.cc:70
#3  0x40365988 in sigc::internal::slot_rep::disconnect (this=0x0)
    at functors/slot_base.cc:37
#4  0x40365d9c in sigc::slot_base::disconnect (this=0x408a02c6)
    at functors/slot_base.cc:142
#5  0x403658bc in sigc::connection::disconnect (this=0x408a02c6) at 
connection.cc:80
#6  0x0804e404 in (anonymous namespace)::DemoRenderArea::~DemoRenderArea ()
#7  0x4021caf6 in Gtk::Object::destroy_notify_ () 
from /usr/lib/./libgtkmm-2.3.so.6
#8  0x4034af45 in Glib::ObjectBase::destroy_notify_callback_ (data=0x0)
    at objectbase.cc:195
#9  0x408669ca in g_datalist_clear (datalist=0x80a53b8) at gdataset.c:117
#10 0x40804e55 in g_object_finalize (object=0x80a53b0) at gobject.c:537
#11 0x40562c5c in gtk_object_finalize (gobject=0x80a53b0) at gtkobject.c:406
#12 0x4065b0b3 in gtk_widget_finalize (object=0x80a53b0) at gtkwidget.c:6415
#13 0x40805011 in g_object_last_unref (object=0x80a53b0) at gobject.c:570
#14 0x408052af in g_object_run_dispose (object=0x80a53b0) at gobject.c:603
#15 0x40562a9b in gtk_object_destroy (object=0x80a53b0) at gtkobject.c:361
#16 0x40651e65 in gtk_widget_destroy (widget=0x80a53b0) at gtkwidget.c:1913
#17 0x4046ed34 in gtk_bin_forall (container=0x408a02c6, include_internals=0,
    callback=0x40651e20 <gtk_widget_destroy>, callback_data=0x408a02c6)
    at gtkbin.c:165
#18 0x401eb17e in Gtk::Container_Class::forall_vfunc_callback ()
   from /usr/lib/./libgtkmm-2.3.so.6
#19 0x404b4f4e in gtk_container_foreach (container=0x80a2db0,
---Type <return> to continue, or q <return> to quit---
    callback=0x40651e20 <gtk_widget_destroy>, callback_data=0x408a02c6)
    at gtkcontainer.c:1291
#20 0x404b3cf5 in gtk_container_destroy (object=0x80a2db0) at 
gtkcontainer.c:828
#21 0x40663fe9 in gtk_window_destroy (object=0x80a2db0) at gtkwindow.c:3531
#22 0x401eacdb in Gtk::Container_Class::destroy_callback ()
   from /usr/lib/./libgtkmm-2.3.so.6
#23 0x40817eb1 in g_cclosure_marshal_VOID__VOID (closure=0x8054fc8,
    return_value=0x0, n_param_values=1, param_values=0x408a02c6,
    invocation_hint=0xbffff048, marshal_data=0x401eaca0) at gmarshal.c:77
#24 0x40802867 in g_type_class_meta_marshal (closure=0x8054fc8,
    return_value=0x408a02c6, n_param_values=1082786502, 
param_values=0xbffff150,
    invocation_hint=0x408a02c6, marshal_data=0x408a02c6) at gclosure.c:514
#25 0x408024d0 in g_closure_invoke (closure=0x8054fc8, 
return_value=0x408a02c6,
    n_param_values=1082786502, param_values=0x408a02c6, 
invocation_hint=0x408a02c6)
    at gclosure.c:437
#26 0x40817576 in signal_emit_unlocked_R (node=0x8097f18, detail=0,
    instance=0x80a2db0, emission_return=0x0, instance_and_params=0xbffff150)
    at gsignal.c:2552
#27 0x40816917 in g_signal_emit_valist (instance=0x80a2db0, signal_id=6, 
detail=0,
    var_args=0xbffff2dc "L[p@(\210\b\b°-\n\b\bóÿ¿c®e °-\n\bP") at 
gsignal.c:2195
#28 0x40816c14 in g_signal_emit (instance=0x408a02c6, signal_id=1082786502,
    detail=1082786502) at gsignal.c:2239
#29 0x40562ba9 in gtk_object_dispose (gobject=0x80a2db0) at gtkobject.c:376
#30 0x4065ae63 in gtk_widget_dispose (object=0x80a2db0) at gtkwidget.c:6357
#31 0x40661269 in gtk_window_dispose (object=0x80a2db0) at gtkwindow.c:1789
#32 0x4027fee6 in Gtk::Window_Class::dispose_vfunc_callback ()
   from /usr/lib/./libgtkmm-2.3.so.6
#33 0x408052a7 in g_object_run_dispose (object=0x80a2db0) at gobject.c:602
---Type <return> to continue, or q <return> to quit---
#34 0x40562a9b in gtk_object_destroy (object=0x80a2db0) at gtkobject.c:361
#35 0x4027fe88 in Gtk::Window::_destroy_c_instance ()
   from /usr/lib/./libgtkmm-2.3.so.6
#36 0x4027fe2d in Gtk::Window::destroy_ () from /usr/lib/./libgtkmm-2.3.so.6
#37 0x40280878 in Gtk::Window::~Window () from /usr/lib/./libgtkmm-2.3.so.6
#38 0x0804ed61 in main ()
(gdb) c
Continuing.

(pixbuf-demo:30202): GLib-CRITICAL **: file gmain.c: line 997 
(g_source_destroy): assertion `source != NULL' failed

Program exited normally.
(gdb)



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