Does this look about right? Perhaps this should be added to the standard installation. Necessary for forcing disconnects from python objects on the c++ side...
// Uninstall the instance data for a C++ object from a Python instance // object. void instance_holder::uninstall(PyObject* self) throw() { assert(self->ob_type->ob_type == &class_metatype_object); instance_holder **chain = &(((objects::instance<>*)self)->objects); // iterate through, looking for the pointer that points to this while ( *chain && *chain != this ) chain = &((*chain)->m_next); // set that pointer to point to the m_next if (*chain) *chain = m_next; m_next = 0; } _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig