Hi, I managed to generate a set of SIP files which compile and link without errors, but when I try to actually instantiate one of the objects (actually, it is a a widget from the Okteta library), I end up crashing in siplib.c like this:
5502 in /build/buildd/sip4-4.13.3/siplib/siplib.c (gdb) Program received signal SIGSEGV, Segmentation fault. createClassType (client=client@entry=0x7fffdd5adcc0 <sipModuleAPI_okteta>, ctd=ctd@entry= 0x7fffdd5b1e40 <sipTypeDef_okteta_Okteta_Character>, mod_dict=mod_dict@entry= {'__name__': 'PyOkteta4.okteta', 'Okteta': <sip.wrappertype at remote 0x14ec480>, '__doc__': None, '__package__': None}) at /build/buildd/sip4-4.13.3/siplib/siplib.c:5502 5502 in /build/buildd/sip4-4.13.3/siplib/siplib.c (gdb) Looking at the source code, we are in this loop: 5488 for (sup = ctd->ctd_supers, i = 0; i < nrsupers; ++i, ++sup) 5489 { 5490 PyObject *st; 5491 sipTypeDef *sup_td = getGeneratedType(sup, client); 5492 5493 /* 5494 * Initialise the super-class if necessary. It will always be in 5495 * the same module if it needs doing. 5496 */ 5497 if (createClassType(client, (sipClassTypeDef *)sup_td, mod_dict) < 0) 5498 goto relbases; 5499 5500 st = (PyObject *)sipTypeAsPyTypeObject(sup_td); 5501 5502 Py_INCREF(st); 5503 PyTuple_SET_ITEM(bases, i, st); 5504 } Now, i'm a bit out of my comfort zone here ;-), but "st" is NULL and the immediate cause of the crash, and looking back nrsupers should be 3 because: (gdb) p ctd.ctd_supers[0] $86 = { sc_type = 24, sc_module = 0, sc_flag = 1 } (gdb) p ctd.ctd_supers[1] $87 = { sc_type = 65535, sc_module = 255, sc_flag = 1 } (gdb) p ctd.ctd_supers[2] $88 = { sc_type = 0, sc_module = 0, sc_flag = 0 } (gdb) p ctd.ctd_supers @ 3 $95 = {0x7fffdd5ad41c <supers_Okteta_Character>, 0x0, 0x7fffdd3797b0 <init_Okteta_Character(sipSimpleWrapper*, PyObject*, PyObject*, PyObject**, PyObject**, PyObject**)>} I'm guessing I've screwed up the bindings in some way to do with the superclasses of Character, but since that is simply QChar, I'm not sure what to look at next. Reproduction just requires to try and add an Okteta::ByteArrayColumnView using designer, but I am guessing that the error is a very basic one on my part. Any nudges/hints much appreciated! Thanks, Shaheed P.S. The .msp file and the generated .sip files can be found at: http://quickgit.kde.org/index.php?p=kate.git&a=tree&hb=31e3a2c995e9981e8cdf40b4973aedd1f39d893c&h=d15d85b0b1843713b0d591a611a8840c81feba12&f=kate%2Fplugins%2Fpate%2Fsrc%2Fsip _______________________________________________ PyQt mailing list PyQt@riverbankcomputing.com http://www.riverbankcomputing.com/mailman/listinfo/pyqt