[Python-checkins] python/dist/src/Objects typeobject.c, 2.241.6.2, 2.241.6.3

rhettinger at users.sourceforge.net rhettinger at users.sourceforge.net
Sun Oct 12 19:41:24 EDT 2003


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

Modified Files:
      Tag: release23-maint
	typeobject.c 
Log Message:
Backport fix to SF bug #820397:  __nonzero__() returns 1/0



Index: typeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/typeobject.c,v
retrieving revision 2.241.6.2
retrieving revision 2.241.6.3
diff -C2 -d -r2.241.6.2 -r2.241.6.3
*** typeobject.c	9 Oct 2003 20:51:07 -0000	2.241.6.2
--- typeobject.c	12 Oct 2003 23:41:21 -0000	2.241.6.3
***************
*** 3313,3316 ****
--- 3313,3330 ----
  
  static PyObject *
+ wrap_inquirypred(PyObject *self, PyObject *args, void *wrapped)
+ {
+ 	inquiry func = (inquiry)wrapped;
+ 	int res;
+ 
+ 	if (!PyArg_ParseTuple(args, ""))
+ 		return NULL;
+ 	res = (*func)(self);
+ 	if (res == -1 && PyErr_Occurred())
+ 		return NULL;
+ 	return PyBool_FromLong((long)res);
+ }
+ 
+ static PyObject *
  wrap_binaryfunc(PyObject *self, PyObject *args, void *wrapped)
  {
***************
*** 4901,4905 ****
  	UNSLOT("__abs__", nb_absolute, slot_nb_absolute, wrap_unaryfunc,
  	       "abs(x)"),
! 	UNSLOT("__nonzero__", nb_nonzero, slot_nb_nonzero, wrap_inquiry,
  	       "x != 0"),
  	UNSLOT("__invert__", nb_invert, slot_nb_invert, wrap_unaryfunc, "~x"),
--- 4915,4919 ----
  	UNSLOT("__abs__", nb_absolute, slot_nb_absolute, wrap_unaryfunc,
  	       "abs(x)"),
! 	UNSLOT("__nonzero__", nb_nonzero, slot_nb_nonzero, wrap_inquirypred,
  	       "x != 0"),
  	UNSLOT("__invert__", nb_invert, slot_nb_invert, wrap_unaryfunc, "~x"),





More information about the Python-checkins mailing list