connection != NULL assertion in dbus-python

John (J5) Palmieri johnp at redhat.com
Mon Dec 11 14:06:48 PST 2006


On Fri, 2006-12-08 at 16:20 +0000, Simon McVittie wrote:
> J5,
> This commit (in my dbus-python git branch on fd.o) might fix your crash -
> it's the only way I can see that a referenced Connection might get a NULL
> DBusConnection. I'll introduce some more checks anyway, though.
> 
> commit 380b44d38d333092bc9fe2eae8b7a836cb2791c7
> Author: Simon McVittie <simon.mcvittie at collabora.co.uk>
> Date:   Fri Dec 8 16:10:12 2006 +0000
> 
>     _dbus_bindings/conn-impl.h: Be more careful that referenced Connections always have a DBusConnection

Here is a bt on the old crash.  I'm going to try with the patch now.  It
looks like we are crashing on isinstance which we use a lot of in sugar.

-- 
John (J5) Palmieri <johnp at redhat.com>
-------------- next part --------------
Script started on Mon Dec 11 21:51:01 2006
gdb python core.1530 
GNU gdb Red Hat Linux (6.5-8.fc6rh)
Copyright (C) 2006 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 "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".


warning: core file may not match specified executable file.

warning: Can't read pathname for load map: Input/output error.
Reading symbols from /usr/lib/libpython2.4.so.1.0...Reading symbols from /usr/lib/debug/usr/lib/libpython2.4.so.1.0.debug...done.
done.
Loaded symbols for /usr/lib/libpython2.4.so.1.0
Reading symbols from /lib/libpthread.so.0...done.
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libutil.so.1...done.
Loaded symbols for /lib/libutil.so.1
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/gobject/_gobject.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/gobject/_gobject.so
Reading symbols from /lib/libgobject-2.0.so.0...done.
Loaded symbols for /lib/libgobject-2.0.so.0
Reading symbols from /lib/libgthread-2.0.so.0...done.
Loaded symbols for /lib/libgthread-2.0.so.0
Reading symbols from /lib/libglib-2.0.so.0...done.
Loaded symbols for /lib/libglib-2.0.so.0
Reading symbols from /lib/librt.so.1...done.
Loaded symbols for /lib/librt.so.1
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/gtk/_gtk.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/gtk/_gtk.so
Reading symbols from /usr/lib/libgtk-x11-2.0.so.0...done.
Loaded symbols for /usr/lib/libgtk-x11-2.0.so.0
Reading symbols from /usr/lib/libgdk-x11-2.0.so.0...done.
Loaded symbols for /usr/lib/libgdk-x11-2.0.so.0
Reading symbols from /usr/lib/libatk-1.0.so.0...done.
Loaded symbols for /usr/lib/libatk-1.0.so.0
Reading symbols from /usr/lib/libgdk_pixbuf-2.0.so.0...done.
Loaded symbols for /usr/lib/libgdk_pixbuf-2.0.so.0
Reading symbols from /usr/lib/libpangocairo-1.0.so.0...done.
Loaded symbols for /usr/lib/libpangocairo-1.0.so.0
Reading symbols from /usr/lib/libpango-1.0.so.0...done.
Loaded symbols for /usr/lib/libpango-1.0.so.0
Reading symbols from /usr/lib/libcairo.so.2...done.
Loaded symbols for /usr/lib/libcairo.so.2
Reading symbols from /lib/libgmodule-2.0.so.0...done.
Loaded symbols for /lib/libgmodule-2.0.so.0
Reading symbols from /usr/lib/libX11.so.6...done.
Loaded symbols for /usr/lib/libX11.so.6
Reading symbols from /usr/lib/libfontconfig.so.1...done.
Loaded symbols for /usr/lib/libfontconfig.so.1
Reading symbols from /usr/lib/libXext.so.6...done.
Loaded symbols for /usr/lib/libXext.so.6
Reading symbols from /usr/lib/libXrender.so.1...done.
Loaded symbols for /usr/lib/libXrender.so.1
Reading symbols from /usr/lib/libXinerama.so.1...done.
Loaded symbols for /usr/lib/libXinerama.so.1
Reading symbols from /usr/lib/libXi.so.6...done.
Loaded symbols for /usr/lib/libXi.so.6
Reading symbols from /usr/lib/libXrandr.so.2...done.
Loaded symbols for /usr/lib/libXrandr.so.2
Reading symbols from /usr/lib/libXcursor.so.1...done.
Loaded symbols for /usr/lib/libXcursor.so.1
Reading symbols from /usr/lib/libXfixes.so.3...done.
Loaded symbols for /usr/lib/libXfixes.so.3
Reading symbols from /usr/lib/libpangoft2-1.0.so.0...done.
Loaded symbols for /usr/lib/libpangoft2-1.0.so.0
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /usr/lib/libpng12.so.0...done.
Loaded symbols for /usr/lib/libpng12.so.0
Reading symbols from /usr/lib/libXau.so.6...done.
Loaded symbols for /usr/lib/libXau.so.6
Reading symbols from /usr/lib/libXdmcp.so.6...done.
Loaded symbols for /usr/lib/libXdmcp.so.6
Reading symbols from /lib/libexpat.so.0...done.
Loaded symbols for /lib/libexpat.so.0
Reading symbols from /usr/lib/python2.4/site-packages/cairo/_cairo.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/cairo/_cairo.so
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/pango.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/pango.so
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/atk.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/atk.so
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/pangocairo.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/pangocairo.so
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/lib/gconv/ISO8859-1.so...done.
Loaded symbols for /usr/lib/gconv/ISO8859-1.so
Reading symbols from /usr/lib/python2.4/lib-dynload/timemodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/timemodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/timemodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/stropmodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/stropmodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/stropmodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/cStringIO.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/cStringIO.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/cStringIO.so
Reading symbols from /usr/lib/python2.4/lib-dynload/collectionsmodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/collectionsmodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/collectionsmodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/mathmodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/mathmodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/mathmodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/binascii.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/binascii.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/binascii.so
Reading symbols from /usr/lib/python2.4/lib-dynload/_randommodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/_randommodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/_randommodule.so
Reading symbols from /usr/lib/python2.4/site-packages/threadframe.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/threadframe.so
Reading symbols from /usr/lib/python2.4/lib-dynload/itertoolsmodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/itertoolsmodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/itertoolsmodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/_localemodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/_localemodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/_localemodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/structmodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/structmodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/structmodule.so
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/wnck.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/wnck.so
Reading symbols from /usr/lib/libwnck-1.so.18...done.
Loaded symbols for /usr/lib/libwnck-1.so.18
Reading symbols from /usr/lib/libstartup-notification-1.so.0...done.
Loaded symbols for /usr/lib/libstartup-notification-1.so.0
Reading symbols from /usr/lib/libSM.so.6...done.
Loaded symbols for /usr/lib/libSM.so.6
Reading symbols from /usr/lib/libICE.so.6...done.
Loaded symbols for /usr/lib/libICE.so.6
Reading symbols from /usr/lib/libXRes.so.1...done.
Loaded symbols for /usr/lib/libXRes.so.1
Reading symbols from /usr/lib/python2.4/site-packages/hippo.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/hippo.so
Reading symbols from /usr/lib/libhippocanvas-1.so.0...done.
Loaded symbols for /usr/lib/libhippocanvas-1.so.0
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/rsvg.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/rsvg.so
Reading symbols from /usr/lib/librsvg-2.so.2...done.
Loaded symbols for /usr/lib/librsvg-2.so.2
Reading symbols from /usr/lib/libxml2.so.2...done.
Loaded symbols for /usr/lib/libxml2.so.2
Reading symbols from /usr/lib/gtk-2.0/engines/libolpc.so...done.
Loaded symbols for /usr/lib/gtk-2.0/engines/libolpc.so
Reading symbols from /usr/lib/python2.4/site-packages/_dbus_bindings.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/_dbus_bindings.so
Reading symbols from /lib/libdbus-1.so.3...Reading symbols from /usr/lib/debug/lib/libdbus-1.so.3.2.0.debug...done.
done.
Loaded symbols for /lib/libdbus-1.so.3
Reading symbols from /lib/libcap.so.1...done.
Loaded symbols for /lib/libcap.so.1
Reading symbols from /usr/lib/python2.4/lib-dynload/_weakref.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/_weakref.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/_weakref.so
Reading symbols from /usr/lib/python2.4/site-packages/libxml2mod.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/libxml2mod.so
Reading symbols from /usr/lib/python2.4/site-packages/_dbus_glib_bindings.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/_dbus_glib_bindings.so
Reading symbols from /usr/lib/libdbus-glib-1.so.2...done.
Loaded symbols for /usr/lib/libdbus-glib-1.so.2
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/python2.4/lib-dynload/operator.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/operator.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/operator.so
Reading symbols from /usr/lib/python2.4/lib-dynload/shamodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/shamodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/shamodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/pyexpat.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/pyexpat.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/pyexpat.so
Reading symbols from /usr/lib/python2.4/lib-dynload/_socketmodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/_socketmodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/_socketmodule.so
Reading symbols from /usr/lib/python2.4/lib-dynload/_ssl.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/_ssl.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/_ssl.so
Reading symbols from /lib/libssl.so.6...done.
Loaded symbols for /lib/libssl.so.6
Reading symbols from /lib/libcrypto.so.6...done.
Loaded symbols for /lib/libcrypto.so.6
Reading symbols from /usr/lib/libgssapi_krb5.so.2...done.
Loaded symbols for /usr/lib/libgssapi_krb5.so.2
Reading symbols from /usr/lib/libkrb5.so.3...done.
Loaded symbols for /usr/lib/libkrb5.so.3
Reading symbols from /lib/libcom_err.so.2...done.
Loaded symbols for /lib/libcom_err.so.2
Reading symbols from /usr/lib/libk5crypto.so.3...done.
Loaded symbols for /usr/lib/libk5crypto.so.3
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
Reading symbols from /usr/lib/libkrb5support.so.0...done.
Loaded symbols for /usr/lib/libkrb5support.so.0
Reading symbols from /usr/lib/python2.4/lib-dynload/fcntlmodule.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/fcntlmodule.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/fcntlmodule.so
Reading symbols from /usr/lib/python2.4/site-packages/_sugar.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/_sugar.so
Reading symbols from /usr/lib/xulrunner-1.8.0.4/libgtkembedmoz.so...done.
Loaded symbols for /usr/lib/xulrunner-1.8.0.4/libgtkembedmoz.so
Reading symbols from /usr/lib/xulrunner-1.8.0.4/libxpcom.so...done.
Loaded symbols for /usr/lib/xulrunner-1.8.0.4/libxpcom.so
Reading symbols from /usr/lib/libplds4.so...done.
Loaded symbols for /usr/lib/libplds4.so
Reading symbols from /usr/lib/libplc4.so...done.
Loaded symbols for /usr/lib/libplc4.so
Reading symbols from /usr/lib/libnspr4.so...done.
Loaded symbols for /usr/lib/libnspr4.so
Reading symbols from /lib/libgcc_s.so.1...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /usr/lib/xulrunner-1.8.0.4/libxul.so...done.
Loaded symbols for /usr/lib/xulrunner-1.8.0.4/libxul.so
Reading symbols from /usr/lib/libstdc++.so.6...done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/xulrunner-1.8.0.4/libmozjs.so...done.
Loaded symbols for /usr/lib/xulrunner-1.8.0.4/libmozjs.so
Reading symbols from /usr/lib/libXft.so.2...done.
Loaded symbols for /usr/lib/libXft.so.2
Reading symbols from /usr/lib/libXt.so.6...done.
Loaded symbols for /usr/lib/libXt.so.6
Reading symbols from /usr/lib/python2.4/site-packages/gtk-2.0/gtkmozembed.so...done.
Loaded symbols for /usr/lib/python2.4/site-packages/gtk-2.0/gtkmozembed.so
Reading symbols from /usr/lib/python2.4/lib-dynload/readline.so...Reading symbols from /usr/lib/debug/usr/lib/python2.4/lib-dynload/readline.so.debug...done.
done.
Loaded symbols for /usr/lib/python2.4/lib-dynload/readline.so
Reading symbols from /usr/lib/libreadline.so.5...done.
Loaded symbols for /usr/lib/libreadline.so.5
Reading symbols from /lib/libtermcap.so.2...done.
Loaded symbols for /lib/libtermcap.so.2
Failed to read a valid object file image from memory.
Core was generated by `/usr/bin/python /usr/bin/sugar-shell'.
Program terminated with signal 11, Segmentation fault.
#0  PyType_IsSubtype (a=0x0, b=0x81da68c) at Objects/typeobject.c:821
821		if (!(a->tp_flags & Py_TPFLAGS_HAVE_CLASS))
(gdb) where
#0  PyType_IsSubtype (a=0x0, b=0x81da68c) at Objects/typeobject.c:821
#1  0xb7e4b01b in type_call (type=0x81da68c, args=0xb7c2802c, kwds=0x0) at Objects/typeobject.c:432
#2  0xb7e0cec7 in PyObject_Call (func=0x0, arg=0xb7c2802c, kw=0x0) at Objects/abstract.c:1795
#3  0xb7e6fad1 in PyEval_EvalFrame (f=0x81c52cc) at Python/ceval.c:3776
#4  0xb7e731b5 in PyEval_EvalCodeEx (co=0xb6f1a4a0, globals=0xb6f0268c, locals=0x0, args=0xb6f623d8, argcount=1, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2741
#5  0xb7e24faa in function_call (func=0xb6ba0fb4, arg=0xb6f623cc, kw=0x0) at Objects/funcobject.c:548
#6  0xb7e0cec7 in PyObject_Call (func=0x0, arg=0xb6f623cc, kw=0x0) at Objects/abstract.c:1795
#7  0xb7e13538 in instancemethod_call (func=0xb6f8425c, arg=0xb6f623cc, kw=0x0) at Objects/classobject.c:2532
#8  0xb7e0cec7 in PyObject_Call (func=0x0, arg=0xb7c2802c, kw=0x0) at Objects/abstract.c:1795
#9  0xb7e4f61e in slot_tp_init (self=0xb681120c, args=0xb7c2802c, kwds=0x0) at Objects/typeobject.c:4774
#10 0xb7e4b045 in type_call (type=<value optimized out>, args=0xb7c2802c, kwds=0x0) at Objects/typeobject.c:435
#11 0xb7e0cec7 in PyObject_Call (func=0x0, arg=0xb7c2802c, kw=0x0) at Objects/abstract.c:1795
#12 0xb7e6fad1 in PyEval_EvalFrame (f=0x8057b5c) at Python/ceval.c:3776
#13 0xb7e722dd in PyEval_EvalFrame (f=0x8083ab4) at Python/ceval.c:3651
#14 0xb7e731b5 in PyEval_EvalCodeEx (co=0xb67f1460, globals=0xb67f257c, locals=0x0, args=0xb6f62218, argcount=1, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2741
#15 0xb7e24faa in function_call (func=0xb67fc0d4, arg=0xb6f6220c, kw=0x0) at Objects/funcobject.c:548
#16 0xb7e0cec7 in PyObject_Call (func=0x0, arg=0xb6f6220c, kw=0x0) at Objects/abstract.c:1795
#17 0xb7e13538 in instancemethod_call (func=0xb6f609dc, arg=0xb6f6220c, kw=0x0) at Objects/classobject.c:2532
#18 0xb7e0cec7 in PyObject_Call (func=0x0, arg=0xb7c2802c, kw=0x0) at Objects/abstract.c:1795
#19 0xb7e6c9dc in PyEval_CallObjectWithKeywords (func=0xb6f609dc, arg=0xb7c2802c, kw=0x0) at Python/ceval.c:3435
#20 0xb7e1739d in PyInstance_New (klass=0xb67f3bfc, arg=0xb7c2802c, kw=0x0) at Objects/classobject.c:588
#21 0xb7e0cec7 in PyObject_Call (func=0x0, arg=0xb7c2802c, kw=0x0) at Objects/abstract.c:1795
#22 0xb7e6fad1 in PyEval_EvalFrame (f=0x8082e8c) at Python/ceval.c:3776
#23 0xb7e731b5 in PyEval_EvalCodeEx (co=0xb7beb760, globals=0xb7c3f824, locals=0xb7c3f824, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at Python/ceval.c:2741
#24 0xb7e73293 in PyEval_EvalCode (co=0xb7beb760, globals=0xb7c3f824, locals=0xb7c3f824) at Python/ceval.c:484
#25 0xb7e90078 in run_node (n=<value optimized out>, filename=<value optimized out>, globals=0xb7c3f824, locals=0xb7c3f824, flags=0xbfe9a0a4) at Python/pythonrun.c:1285
#26 0xb7e917b8 in PyRun_SimpleFileExFlags (fp=0x804a008, filename=0xbfe9abfa "/usr/bin/sugar-shell", closeit=1, flags=0xbfe9a0a4) at Python/pythonrun.c:869
#27 0xb7e91e9a in PyRun_AnyFileExFlags (fp=0x804a008, filename=0xbfe9abfa "/usr/bin/sugar-shell", closeit=1, flags=0xbfe9a0a4) at Python/pythonrun.c:673
#28 0xb7e98825 in Py_Main (argc=1, argv=0xbfe9a174) at Modules/main.c:493
#29 0x08048582 in main (argc=0, argv=0x0) at Modules/python.c:23
(gdb) quit
]0;olpc at localhost:~[olpc at localhost ~]$ exit

Script done on Mon Dec 11 21:51:39 2006


More information about the dbus mailing list