[Python-checkins] CVS: python/dist/src/Objects object.c,2.64,2.65
Guido van Rossum
python-dev@python.org
Sat, 25 Mar 2000 13:39:23 -0500 (EST)
Update of /projects/cvsroot/python/dist/src/Objects
In directory eric:/home/guido/hp/mal/py-patched/Objects
Modified Files:
object.c
Log Message:
Christian Tismer:
Added "better safe than sorry" patch to the new
trashcan code in object.c, to ensure that tstate
is not touched when it might be undefined.
Index: object.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Objects/object.c,v
retrieving revision 2.64
retrieving revision 2.65
diff -C2 -r2.64 -r2.65
*** object.c 2000/03/13 16:01:29 2.64
--- object.c 2000/03/25 18:39:19 2.65
***************
*** 921,924 ****
--- 921,927 ----
CT 2k0309
modified to restore a possible error.
+
+ CT 2k0325
+ added better safe than sorry check for threadstate
*/
***************
*** 931,935 ****
{
PyObject *error_type, *error_value, *error_traceback;
! PyErr_Fetch(&error_type, &error_value, &error_traceback);
if (!_PyTrash_delete_later)
--- 934,940 ----
{
PyObject *error_type, *error_value, *error_traceback;
!
! if (PyThreadState_GET() != NULL)
! PyErr_Fetch(&error_type, &error_value, &error_traceback);
if (!_PyTrash_delete_later)
***************
*** 938,942 ****
PyList_Append(_PyTrash_delete_later, (PyObject *)op);
! PyErr_Restore(error_type, error_value, error_traceback);
}
--- 943,948 ----
PyList_Append(_PyTrash_delete_later, (PyObject *)op);
! if (PyThreadState_GET() != NULL)
! PyErr_Restore(error_type, error_value, error_traceback);
}