mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	[YoutubeDL] format spec: Do not fail when a filter gives an empty result
For example with 'best[height<40]' we ended getting a 'IndexError: list index out of range'.
This commit is contained in:
		| @@ -15,7 +15,7 @@ from youtube_dl import YoutubeDL | ||||
| from youtube_dl.compat import compat_str | ||||
| from youtube_dl.extractor import YoutubeIE | ||||
| from youtube_dl.postprocessor.common import PostProcessor | ||||
| from youtube_dl.utils import match_filter_func | ||||
| from youtube_dl.utils import ExtractorError, match_filter_func | ||||
|  | ||||
| TEST_URL = 'http://localhost/sample.mp4' | ||||
|  | ||||
| @@ -362,6 +362,13 @@ class TestFormatSelection(unittest.TestCase): | ||||
|         downloaded_ids = [info['format_id'] for info in ydl.downloaded_info_dicts] | ||||
|         self.assertEqual(downloaded_ids, ['B', 'C', 'D']) | ||||
|  | ||||
|         ydl = YDL({'format': 'best[height<40]'}) | ||||
|         try: | ||||
|             ydl.process_ie_result(info_dict) | ||||
|         except ExtractorError: | ||||
|             pass | ||||
|         self.assertEqual(ydl.downloaded_info_dicts, []) | ||||
|  | ||||
|  | ||||
| class TestYoutubeDL(unittest.TestCase): | ||||
|     def test_subtitles(self): | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Jaime Marquínez Ferrándiz
					Jaime Marquínez Ferrándiz