diff options
author | Philipp Hagemeister <phihag@phihag.de> | 2014-05-16 12:03:59 +0200 |
---|---|---|
committer | Philipp Hagemeister <phihag@phihag.de> | 2014-05-16 12:03:59 +0200 |
commit | 0a871f68805b0edda7ebc6a357c4ff8aae514758 (patch) | |
tree | a44e2022756d18ce5796d48920c027987dbb2538 | |
parent | 01ed5c9be30a98d3d8bc9eeb4240ce69d4b5c1ae (diff) |
Provide compatibility check_output for 2.6 (Fixes #2926)
-rw-r--r-- | youtube_dl/postprocessor/xattrpp.py | 3 | ||||
-rw-r--r-- | youtube_dl/utils.py | 12 |
2 files changed, 14 insertions, 1 deletions
diff --git a/youtube_dl/postprocessor/xattrpp.py b/youtube_dl/postprocessor/xattrpp.py index 18979241c..f6940940b 100644 --- a/youtube_dl/postprocessor/xattrpp.py +++ b/youtube_dl/postprocessor/xattrpp.py @@ -6,6 +6,7 @@ from .common import PostProcessor from ..utils import ( check_executable, hyphenate_date, + subprocess_check_output ) @@ -57,7 +58,7 @@ class XAttrMetadataPP(PostProcessor): elif user_has_xattr: cmd = ['xattr', '-w', key, value, path] - subprocess.check_output(cmd) + subprocess_check_output(cmd) else: # On Unix, and can't find pyxattr, setfattr, or xattr. diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index 1036ea9bd..aa9347f43 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -1429,3 +1429,15 @@ def qualities(quality_ids): DEFAULT_OUTTMPL = '%(title)s-%(id)s.%(ext)s' + +try: + subprocess_check_output = subprocess.check_output +except AttributeError: + def subprocess_check_output(*args, **kwargs): + assert 'input' not in kwargs + p = subprocess.Popen(*args, stdout=subprocess.PIPE, **kwargs) + output, _ = p.communicate() + ret = p.poll() + if ret: + raise subprocess.CalledProcessError(ret, p.args, output=output) + return output |