Commit 677ffd16 authored by Jesus Cea's avatar Jesus Cea

MERGE: Closes #16112: platform.architecture does not correctly escape argument to /usr/bin/file

parents dc469454 e8801e2e
...@@ -112,7 +112,7 @@ __copyright__ = """ ...@@ -112,7 +112,7 @@ __copyright__ = """
__version__ = '1.0.7' __version__ = '1.0.7'
import collections import collections
import sys, os, re import sys, os, re, subprocess
### Globals & Constants ### Globals & Constants
...@@ -922,13 +922,16 @@ def _syscmd_file(target,default=''): ...@@ -922,13 +922,16 @@ def _syscmd_file(target,default=''):
if sys.platform in ('dos','win32','win16','os2'): if sys.platform in ('dos','win32','win16','os2'):
# XXX Others too ? # XXX Others too ?
return default return default
target = _follow_symlinks(target).replace('"', '\\"') target = _follow_symlinks(target)
try: try:
f = os.popen('file -b "%s" 2> %s' % (target, DEV_NULL)) with open(DEV_NULL) as dev_null:
proc = subprocess.Popen(['file', '-b', '--', target],
stdout=subprocess.PIPE, stderr=dev_null)
except (AttributeError,os.error): except (AttributeError,os.error):
return default return default
output = f.read().strip() output = proc.stdout.read()
rc = f.close() rc = proc.wait()
if not output or rc: if not output or rc:
return default return default
else: else:
......
...@@ -93,6 +93,7 @@ Ben Bell ...@@ -93,6 +93,7 @@ Ben Bell
Thomas Bellman Thomas Bellman
Alexander “Саша” Belopolsky Alexander “Саша” Belopolsky
Eli Bendersky Eli Bendersky
David Benjamin
Andrew Bennetts Andrew Bennetts
Andy Bensky Andy Bensky
Bennett Benson Bennett Benson
......
...@@ -65,6 +65,9 @@ Library ...@@ -65,6 +65,9 @@ Library
- Issue #15421: Fix an OverflowError in `Calendar.itermonthdates()` after - Issue #15421: Fix an OverflowError in `Calendar.itermonthdates()` after
`datetime.MAXYEAR`. Patch by Cédric Krier. `datetime.MAXYEAR`. Patch by Cédric Krier.
- Issue #16112: platform.architecture does not correctly escape argument to
/usr/bin/file. Patch by David Benjamin.
- Issue #15970: `xml.etree.ElementTree` now serializes correctly the empty HTML - Issue #15970: `xml.etree.ElementTree` now serializes correctly the empty HTML
elements 'meta' and 'param'. elements 'meta' and 'param'.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment