Преглед изворни кода

Merge branch 'johnhawkinson-stdin2'

Yen Chi Hsuan пре 9 година
родитељ
комит
e034cbc581
2 измењених фајлова са 10 додато и 0 уклоњено
  1. 6 0
      ChangeLog
  2. 4 0
      youtube_dl/utils.py

+ 6 - 0
ChangeLog

@@ -1,3 +1,9 @@
+version <unreleased>
+
+Core
+* Running youtube-dl in the background is fixed (#10996, #10706, #955)
+
+
 version 2016.10.21.1
 version 2016.10.21.1
 
 
 Extractors
 Extractors

+ 4 - 0
youtube_dl/utils.py

@@ -1818,8 +1818,12 @@ def get_exe_version(exe, args=['--version'],
     """ Returns the version of the specified executable,
     """ Returns the version of the specified executable,
     or False if the executable is not present """
     or False if the executable is not present """
     try:
     try:
+        # STDIN should be redirected too. On UNIX-like systems, ffmpeg triggers
+        # SIGTTOU if youtube-dl is run in the background.
+        # See https://github.com/rg3/youtube-dl/issues/955#issuecomment-209789656
         out, _ = subprocess.Popen(
         out, _ = subprocess.Popen(
             [encodeArgument(exe)] + args,
             [encodeArgument(exe)] + args,
+            stdin=subprocess.PIPE,
             stdout=subprocess.PIPE, stderr=subprocess.STDOUT).communicate()
             stdout=subprocess.PIPE, stderr=subprocess.STDOUT).communicate()
     except OSError:
     except OSError:
         return False
         return False