I'm digging into this further.  I upgraded to Python 2.3 and pyorbit
1.99.6-4, as packaged by Debian unstable.  The test script I posted the
other day now segfaults in registerGlobalEventListener.

Here's the backtrace:

#0  0x080785d0 in PyObject_SetAttrString ()
#1  0x402f3ec8 in demarshal_value (tc=0x40332320, val=0xbffff550)
    at pycorba-marshal.c:482
#2  0x402f46b3 in pyorbit_demarshal_any (any=0xbffff590)
    at pycorba-marshal.c:676
#3  0x402f4f88 in pyorbit_check_ex (ev=0xbffff660) at pycorba-exceptions.c:39
#4  0x402f1bbe in pycorba_method_call (self=0x40383310, args=0x40389b94, 
    kwargs=0x0) at pycorba-method.c:164
#5  0x402f262a in pycorba_bound_method_call (self=0x40383730, args=0x40389b94, 
    kwargs=0x0) at pycorba-method.c:454
#6  0x0805b060 in PyObject_Call ()
#7  0x080a3f00 in PyEval_CallObjectWithKeywords ()
#8  0x080a3bbf in PyEval_CallObjectWithKeywords ()
#9  0x080a2250 in Py_MakePendingCalls ()
#10 0x00000002 in ?? ()
#11 0xbffff7f8 in ?? ()
#12 0x080a14a8 in Py_MakePendingCalls ()

Line 482 in pycorba-marshal.c calls PyObject_SetAttrString with a NULL
instance.  The instance was created on line 465 by a call to
PyObject_CallFunction, which returns NULL.

Going up the stack, demarshal_value is called by pyorbit_demarshal_any
with the first parameter a CORBA_TypeCode of NO_IMPLEMENT.

I think this is the same problem I was seeing before, only the CORBA
exception now causes a crash instead of being propagated as a Python
exception as it did in my previous post (which was from a system that
is still running Python 2.2.3 and PyORBit 1.99.6-3, and presumably an
earlier version of Bonobo/ORBit).

The CORBA exception is raised in pyorbit-servant.c:200, in
pyorbit_servant_generic_skel_func, where imethod->name is "ref" and
PyObject_GetAttrString(pyservant, "ref") is returning NULL.  I'm still
not sure yet where this "ref" string is coming from.

Any ideas?

Thanks,
--Tessa
_______________________________________________
pygtk mailing list   [EMAIL PROTECTED]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/

Reply via email to