Просмотр исходного кода

Use '--' to separate the file argument from the options when calling ffmpeg

This is to avoid a potential issue if the file name begins with a hyphen since ffmpeg will interpret it as an option
Idan Kamara 15 лет назад
Родитель
Сommit
377086af3d
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      youtube-dl

+ 2 - 2
youtube-dl

@@ -2620,7 +2620,7 @@ class FFmpegExtractAudioPP(PostProcessor):
 	@staticmethod
 	def get_audio_codec(path):
 		try:
-			handle = subprocess.Popen(['ffprobe', '-show_streams', path],
+			handle = subprocess.Popen(['ffprobe', '-show_streams', '--', path],
 					stderr=file(os.path.devnull, 'w'), stdout=subprocess.PIPE)
 			output = handle.communicate()[0]
 			if handle.wait() != 0:
@@ -2638,7 +2638,7 @@ class FFmpegExtractAudioPP(PostProcessor):
 	@staticmethod
 	def run_ffmpeg(path, out_path, codec, more_opts):
 		try:
-			ret = subprocess.call(['ffmpeg', '-y', '-i', path, '-vn', '-acodec', codec] + more_opts + [out_path],
+			ret = subprocess.call(['ffmpeg', '-y', '-i', path, '-vn', '-acodec', codec] + more_opts + ['--', out_path],
 					stdout=file(os.path.devnull, 'w'), stderr=subprocess.STDOUT)
 			return (ret == 0)
 		except (IOError, OSError):