mirror of
https://github.com/python/cpython.git
synced 2025-08-22 09:45:06 +00:00
bpo-35346, platform: import subprocess in _syscmd_file() (GH-10892)
Only platform._syscmd_file() uses subprocess. Move subprocess import inside this function to reduce the number of imports at Python startup. Remove also warnings import which is no longer needed.
This commit is contained in:
parent
4752e65250
commit
b8e689a6e8
1 changed files with 7 additions and 5 deletions
|
@ -113,9 +113,9 @@ __copyright__ = """
|
|||
__version__ = '1.0.8'
|
||||
|
||||
import collections
|
||||
import sys, os, re, subprocess
|
||||
|
||||
import warnings
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
|
||||
### Globals & Constants
|
||||
|
||||
|
@ -612,11 +612,13 @@ def _syscmd_file(target, default=''):
|
|||
if sys.platform in ('dos', 'win32', 'win16'):
|
||||
# XXX Others too ?
|
||||
return default
|
||||
|
||||
import subprocess
|
||||
target = _follow_symlinks(target)
|
||||
try:
|
||||
proc = subprocess.Popen(['file', target],
|
||||
stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
||||
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.STDOUT)
|
||||
except (AttributeError, OSError):
|
||||
return default
|
||||
output = proc.communicate()[0].decode('latin-1')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue