[Python-checkins] r73843 - in python/branches/py3k: Lib/socketserver.py Lib/test/test_sys.py Modules/_multiprocessing/win32_functions.c

kristjan.jonsson python-checkins at python.org
Sat Jul 4 17:09:25 CEST 2009


Author: kristjan.jonsson
Date: Sat Jul  4 17:09:25 2009
New Revision: 73843

Log:
http://bugs.python.org/issue6381
merging revision 73819 from trunk

Modified:
   python/branches/py3k/Lib/socketserver.py
   python/branches/py3k/Lib/test/test_sys.py
   python/branches/py3k/Modules/_multiprocessing/win32_functions.c

Modified: python/branches/py3k/Lib/socketserver.py
==============================================================================
--- python/branches/py3k/Lib/socketserver.py	(original)
+++ python/branches/py3k/Lib/socketserver.py	Sat Jul  4 17:09:25 2009
@@ -445,7 +445,12 @@
 
     def close_request(self, request):
         """Called to clean up an individual request."""
-        request.shutdown(socket.SHUT_WR)
+        try:
+            #explicitly shutdown.  socket.close() merely releases
+            #the socket and waits for GC to perform the actual close.
+            request.shutdown(socket.SHUT_WR)
+        except socket.error:
+            pass #some platforms may raise ENOTCONN here
         request.close()
 
 

Modified: python/branches/py3k/Lib/test/test_sys.py
==============================================================================
--- python/branches/py3k/Lib/test/test_sys.py	(original)
+++ python/branches/py3k/Lib/test/test_sys.py	Sat Jul  4 17:09:25 2009
@@ -182,6 +182,8 @@
                 "under Windows, test would generate a spurious crash dialog")
         code = textwrap.dedent("""
             import sys
+            import msvcrt
+            msvcrt.SetErrorMode(msvcrt.SEM_FAILCRITICALERRORS)
 
             def f():
                 try:

Modified: python/branches/py3k/Modules/_multiprocessing/win32_functions.c
==============================================================================
--- python/branches/py3k/Modules/_multiprocessing/win32_functions.c	(original)
+++ python/branches/py3k/Modules/_multiprocessing/win32_functions.c	Sat Jul  4 17:09:25 2009
@@ -130,12 +130,6 @@
 	if (!PyArg_ParseTuple(args, "I", &uExitCode))
 		return NULL;
 
-	#if defined(Py_DEBUG)
-		SetErrorMode(SEM_FAILCRITICALERRORS|SEM_NOALIGNMENTFAULTEXCEPT|SEM_NOGPFAULTERRORBOX|SEM_NOOPENFILEERRORBOX);
-		_CrtSetReportMode(_CRT_ASSERT, _CRTDBG_MODE_DEBUG);
-	#endif
-
-
 	ExitProcess(uExitCode);
 
 	return NULL;


More information about the Python-checkins mailing list