Rapsys Git
/
youtubedl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update changelog.
[youtubedl]
/
youtube_dl
/
postprocessor
/
execafterdownload.py
diff --git
a/youtube_dl/postprocessor/execafterdownload.py
b/youtube_dl/postprocessor/execafterdownload.py
index 08419a3d4b6990c83cd0d0c844a61c2abe5c2f0e..64dabe790bcb74e88b4959f3c20e0eb23a0bcf8c 100644
(file)
--- a/
youtube_dl/postprocessor/execafterdownload.py
+++ b/
youtube_dl/postprocessor/execafterdownload.py
@@
-3,29
+3,29
@@
from __future__ import unicode_literals
import subprocess
from .common import PostProcessor
import subprocess
from .common import PostProcessor
+from ..compat import compat_shlex_quote
from ..utils import (
from ..utils import (
-
shlex_quote
,
+
encodeArgument
,
PostProcessingError,
)
class ExecAfterDownloadPP(PostProcessor):
PostProcessingError,
)
class ExecAfterDownloadPP(PostProcessor):
- def __init__(self, downloader
=None, verboseOutput=None, exec_cmd=None
):
- s
elf.verboseOutput = verboseOutput
+ def __init__(self, downloader
, exec_cmd
):
+ s
uper(ExecAfterDownloadPP, self).__init__(downloader)
self.exec_cmd = exec_cmd
def run(self, information):
cmd = self.exec_cmd
self.exec_cmd = exec_cmd
def run(self, information):
cmd = self.exec_cmd
- if
not '{}'
in cmd:
+ if
'{}' not
in cmd:
cmd += ' {}'
cmd += ' {}'
- cmd = cmd.replace('{}', shlex_quote(information['filepath']))
+ cmd = cmd.replace('{}',
compat_
shlex_quote(information['filepath']))
- self._downloader.to_screen(
"[exec] Executing command: %s"
% cmd)
- retCode = subprocess.call(
cmd
, shell=True)
+ self._downloader.to_screen(
'[exec] Executing command: %s'
% cmd)
+ retCode = subprocess.call(
encodeArgument(cmd)
, shell=True)
if retCode != 0:
raise PostProcessingError(
'Command returned error code %d' % retCode)
if retCode != 0:
raise PostProcessingError(
'Command returned error code %d' % retCode)
- return None, information # by default, keep file and do nothing
-
+ return [], information