Merged revisions 76810 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r76810 | mark.dickinson | 2009-12-13 20:03:21 +0000 (Sun, 13 Dec 2009) | 4 lines

  Make sure that test_capsule always returns NULL on error; this may
  help diagnose the sporadic test_capi failures on Solaris.
........
diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c
index 5917d91..360ddbc 100644
--- a/Modules/_testcapimodule.c
+++ b/Modules/_testcapimodule.c
@@ -1293,6 +1293,21 @@
 	if (error) {
 		return raiseTestError("test_capsule", error);
 	}
+	/* 13/12/2009: something is causing test_capi to fail occasionally on
+	   the Solaris buildbot, with the output:
+
+		internal test_L_code
+		internal test_Z_code
+		internal test_bug_7414
+		internal test_capsule
+		XXX undetected error
+		internaltest test_capi crashed -- <class 'ImportError'>: No module named datetime
+
+	   It seems possible that test_capsule is raising an exception but
+	   failing to return NULL.  Do a PyErr_Occurred check to find out.
+	*/
+	if (PyErr_Occurred())
+		return NULL;
 	Py_RETURN_NONE;
 #undef FAIL
 }