Merged revisions 66677,66700 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r66677 | brett.cannon | 2008-09-28 22:41:21 -0500 (Sun, 28 Sep 2008) | 7 lines

  The _lsprof module could crash the interpreter if it was given an external
  timer that did not return a float and a timer was still running when the
  Profiler object was garbage collected.

  Fixes issue 3895.
  Code review by Benjamin Peterson.
........
  r66700 | brett.cannon | 2008-09-30 12:46:03 -0500 (Tue, 30 Sep 2008) | 5 lines

  Fix a refleak introduced by r66677.

  Fix suggested by Amaury Forgeot d'Arc.
  Closes issue #4003.
........
diff --git a/Modules/_lsprof.c b/Modules/_lsprof.c
index a6fd1f8..8457de1 100644
--- a/Modules/_lsprof.c
+++ b/Modules/_lsprof.c
@@ -150,7 +150,7 @@
 	}
 	Py_DECREF(o);
 	if (PyErr_Occurred()) {
-		PyErr_WriteUnraisable((PyObject *) pObj);
+		PyErr_WriteUnraisable(pObj->externalTimer);
 		return 0;
 	}
 	return result;