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

........
  r74139 | benjamin.peterson | 2009-07-21 09:08:40 -0500 (Tue, 21 Jul 2009) | 1 line

  must use _PyThreadState_Current so it isn't checked for NULL #6530
........
diff --git a/Objects/dictobject.c b/Objects/dictobject.c
index ce6760f..907ccf2 100644
--- a/Objects/dictobject.c
+++ b/Objects/dictobject.c
@@ -714,10 +714,12 @@
 		}
 	}
 
-	/* We can arrive here with a NULL tstate during initialization:
-	   try running "python -Wi" for an example related to string
-	   interning.  Let's just hope that no exception occurs then... */
-	tstate = PyThreadState_GET();
+	/* We can arrive here with a NULL tstate during initialization: try
+	   running "python -Wi" for an example related to string interning.
+	   Let's just hope that no exception occurs then...  This must be
+	   _PyThreadState_Current and not PyThreadState_GET() because in debug
+	   mode, it complains if tstate is NULL. */
+	tstate = _PyThreadState_Current;
 	if (tstate != NULL && tstate->curexc_type != NULL) {
 		/* preserve the existing exception */
 		PyObject *err_type, *err_value, *err_tb;