[Python-checkins] python/dist/src/Objects typeobject.c,2.161,2.162

jhylton@users.sourceforge.net jhylton@users.sourceforge.net
Thu, 25 Jul 2002 09:06:17 -0700


Update of /cvsroot/python/python/dist/src/Objects
In directory usw-pr-cvs1:/tmp/cvs-serv31608

Modified Files:
	typeobject.c 
Log Message:
Complain if __len__() returns < 0, just like classic classes.

Fixes SF bug #575773.

Bug fix candidate.


Index: typeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/typeobject.c,v
retrieving revision 2.161
retrieving revision 2.162
diff -C2 -d -r2.161 -r2.162
*** typeobject.c	17 Jul 2002 16:30:38 -0000	2.161
--- typeobject.c	25 Jul 2002 16:06:15 -0000	2.162
***************
*** 2973,2976 ****
--- 2973,2981 ----
  	len = (int)PyInt_AsLong(res);
  	Py_DECREF(res);
+ 	if (len < 0) {
+ 		PyErr_SetString(PyExc_ValueError, 
+ 				"__len__() should return >= 0");
+ 		return -1;
+ 	}
  	return len;
  }