From: Ethan Glasser-C. <gla...@us...> - 2007-06-14 19:23:03
|
Update of /cvsroot/pyode/pyode/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22072/src Modified Files: heightfielddata.pyx Log Message: * heightfielddata.pyx: Save a reference to the data tuple, because otherwise it gets garbage collected and causes problems. Thanks to Dan Miller for finding the bug and figuring it out. Index: heightfielddata.pyx =================================================================== RCS file: /cvsroot/pyode/pyode/src/heightfielddata.pyx,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** heightfielddata.pyx 14 Jun 2007 05:45:35 -0000 1.2 --- heightfielddata.pyx 14 Jun 2007 19:23:03 -0000 1.3 *************** *** 24,27 **** --- 24,31 ---- """ cdef dHeightfieldDataID hfdid + # This attribute stores the tuple which gets passed to the height + # callback. If we don't keep a reference, the tuple gets garbage + # collected. + cdef object calltup def __new__(self): *************** *** 37,40 **** --- 41,45 ---- cdef void* data tup = (callback, userdata) + self.calltup = tup data = <void*>tup dGeomHeightfieldDataBuildCallback(self.hfdid, |