From: Jesus Cea Date: Fri, 5 Oct 2012 03:31:31 +0000 (+0200) Subject: MERGE: #16112: platform.architecture does not correctly escape argument to /usr/bin... X-Git-Tag: v3.4.0a1~2361^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cb95996fdc6956365642dd42f86dfb380f923fa5;p=thirdparty%2FPython%2Fcpython.git MERGE: #16112: platform.architecture does not correctly escape argument to /usr/bin/file. Fix original patch --- cb95996fdc6956365642dd42f86dfb380f923fa5 diff --cc Lib/platform.py index dd318fe7842a,eedc11c518d1..769fe8846dae --- a/Lib/platform.py +++ b/Lib/platform.py @@@ -924,13 -997,11 +924,12 @@@ def _syscmd_file(target,default='') 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") ++ output = proc.communicate()[0].decode('latin-1') rc = proc.wait() if not output or rc: return default