# HG changeset patch # User Phil Thompson # Date 1308852953 -3600 # Node ID f9f4b161c94021c117e995eccba945d4dd3d0ed4 # Parent df42f6bf92c8cd12dd7cc5a30231728a4c23ead4 Fixed a regression introduced in the recent sipIsPyMethod() changes in the handling of special methods implemented by object (eg. __lt__). diff -r df42f6bf92c8 -r f9f4b161c940 siplib/siplib.c.in --- a/siplib/siplib.c.in Thu Jun 23 17:24:41 2011 +0100 +++ b/siplib/siplib.c.in Thu Jun 23 19:15:53 2011 +0100 @@ -7604,9 +7604,10 @@ #endif /* - * Check any possible reimplementation is not the wrapped C++ method. + * Check any possible reimplementation is not the wrapped C++ method or + * a default special method implementation.. */ - if (cls_dict != NULL && (cls_attr = PyDict_GetItem(cls_dict, mname_obj)) != NULL && Py_TYPE(cls_attr) != &sipMethodDescr_Type) + if (cls_dict != NULL && (cls_attr = PyDict_GetItem(cls_dict, mname_obj)) != NULL && Py_TYPE(cls_attr) != &sipMethodDescr_Type && Py_TYPE(cls_attr) != &PyWrapperDescr_Type) { reimp = cls_attr; break;