[Python-checkins] cpython (3.2): #16112: platform.architecture does not correctly escape argument to
jesus.cea
python-checkins at python.org
Fri Oct 5 05:19:02 CEST 2012
http://hg.python.org/cpython/rev/04f39958aea9
changeset: 79486:04f39958aea9
branch: 3.2
parent: 79464:f6aaac839d83
user: Jesus Cea <jcea at jcea.es>
date: Fri Oct 05 04:58:38 2012 +0200
summary:
#16112: platform.architecture does not correctly escape argument to /usr/bin/file. Use 'communicate()' and decode the bytes
files:
Lib/platform.py | 7 +++----
1 files changed, 3 insertions(+), 4 deletions(-)
diff --git a/Lib/platform.py b/Lib/platform.py
--- a/Lib/platform.py
+++ b/Lib/platform.py
@@ -997,12 +997,11 @@
return default
target = _follow_symlinks(target)
try:
- with open(DEV_NULL) as dev_null:
- proc = subprocess.Popen(['file', '-b', '--', target],
- stdout=subprocess.PIPE, stderr=dev_null)
+ proc = subprocess.Popen(['file', '-b', '--', target],
+ stdout=subprocess.PIPE, stderr=dev_null)
except (AttributeError,os.error):
return default
- output = proc.stdout.read()
+ output = proc.communicate()[0].decode("latin-1")
rc = proc.wait()
if not output or rc:
return default
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list