changeset: 79489:64a0caf49429 branch: 3.3 parent: 79477:a1aa13ef00c5 parent: 79488:9838ae397a19 user: Jesus Cea date: Fri Oct 05 05:31:31 2012 +0200 files: Lib/platform.py description: MERGE: #16112: platform.architecture does not correctly escape argument to /usr/bin/file. Fix original patch diff -r a1aa13ef00c5 -r 64a0caf49429 Lib/platform.py --- a/Lib/platform.py Fri Oct 05 03:33:31 2012 +0300 +++ b/Lib/platform.py Fri Oct 05 05:31:31 2012 +0200 @@ -924,13 +924,12 @@ 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', target], + stdout=subprocess.PIPE, stderr=subprocess.STDOUT) 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