[Python-checkins] python/dist/src/Objects typeobject.c,2.256,2.257

pje at users.sourceforge.net pje at users.sourceforge.net
Wed Mar 24 21:19:36 EST 2004


Update of /cvsroot/python/python/dist/src/Objects
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3103/Objects

Modified Files:
	typeobject.c 
Log Message:
Ensure super() lookup of descriptor from classmethod works (SF #743627)


Index: typeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/typeobject.c,v
retrieving revision 2.256
retrieving revision 2.257
diff -C2 -d -r2.256 -r2.257
*** typeobject.c	8 Feb 2004 04:21:26 -0000	2.256
--- typeobject.c	25 Mar 2004 02:19:34 -0000	2.257
***************
*** 5538,5542 ****
  				f = res->ob_type->tp_descr_get;
  				if (f != NULL) {
! 					tmp = f(res, su->obj,
  						(PyObject *)starttype);
  					Py_DECREF(res);
--- 5538,5549 ----
  				f = res->ob_type->tp_descr_get;
  				if (f != NULL) {
! 					tmp = f(res,
! 						/* Only pass 'obj' param if
! 						   this is instance-mode super 
! 						   (See SF ID #743627)
! 						*/
! 						(su->obj==su->obj_type 
! 							? (PyObject *)NULL 
! 							: su->obj),
  						(PyObject *)starttype);
  					Py_DECREF(res);




More information about the Python-checkins mailing list