[Python-checkins] r86433 - in python/branches/release31-maint: Lib/distutils/msvc9compiler.py

eric.araujo python-checkins at python.org
Fri Nov 12 21:27:46 CET 2010


Author: eric.araujo
Date: Fri Nov 12 21:27:45 2010
New Revision: 86433

Log:
Merged revisions 86274,86276 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r86274 | eric.araujo | 2010-11-06 16:57:52 +0100 (sam., 06 nov. 2010) | 2 lines
  
  Correct the fix for #10252: Popen objects have no close method.
........
  r86276 | eric.araujo | 2010-11-06 19:03:52 +0100 (sam., 06 nov. 2010) | 2 lines
  
  Fix #10252 again (hopefully definitely).  Patch by Brian Curtin.
........


Modified:
   python/branches/release31-maint/   (props changed)
   python/branches/release31-maint/Lib/distutils/msvc9compiler.py

Modified: python/branches/release31-maint/Lib/distutils/msvc9compiler.py
==============================================================================
--- python/branches/release31-maint/Lib/distutils/msvc9compiler.py	(original)
+++ python/branches/release31-maint/Lib/distutils/msvc9compiler.py	Fri Nov 12 21:27:45 2010
@@ -267,21 +267,24 @@
         stdout, stderr = popen.communicate()
         if popen.wait() != 0:
             raise DistutilsPlatformError(stderr.decode("mbcs"))
-    finally:
-        popen.close()
 
-    stdout = stdout.decode("mbcs")
-    for line in stdout.split("\n"):
-        line = Reg.convert_mbcs(line)
-        if '=' not in line:
-            continue
-        line = line.strip()
-        key, value = line.split('=', 1)
-        key = key.lower()
-        if key in interesting:
-            if value.endswith(os.pathsep):
-                value = value[:-1]
-            result[key] = removeDuplicates(value)
+        stdout = stdout.decode("mbcs")
+        for line in stdout.split("\n"):
+            line = Reg.convert_mbcs(line)
+            if '=' not in line:
+                continue
+            line = line.strip()
+            key, value = line.split('=', 1)
+            key = key.lower()
+            if key in interesting:
+                if value.endswith(os.pathsep):
+                    value = value[:-1]
+                result[key] = removeDuplicates(value)
+
+    finally:
+        popen.stdin.close()
+        popen.stdout.close()
+        popen.stderr.close()
 
     if len(result) != len(interesting):
         raise ValueError(str(list(result.keys())))


More information about the Python-checkins mailing list