Browse Source

[YoutubeDL] don't set the 'requested_subtitles' without writesubtitles or writeautomaticsub

Jaime Marquínez Ferrándiz 10 years ago
parent
commit
4d17184817
2 changed files with 9 additions and 7 deletions
  1. 5 5
      test/test_subtitles.py
  2. 4 2
      youtube_dl/YoutubeDL.py

+ 5 - 5
test/test_subtitles.py

@@ -113,7 +113,7 @@ class TestYoutubeSubtitles(BaseTestSubtitles):
         self.DL.params['writesubtitles'] = True
         self.DL.params['allsubtitles'] = True
         subtitles = self.getSubtitles()
-        self.assertEqual(len(subtitles), 0)
+        self.assertFalse(subtitles)
 
     def test_youtube_multiple_langs(self):
         self.url = 'QRS8MkLhQmM'
@@ -152,7 +152,7 @@ class TestDailymotionSubtitles(BaseTestSubtitles):
         self.DL.params['writesubtitles'] = True
         self.DL.params['allsubtitles'] = True
         subtitles = self.getSubtitles()
-        self.assertEqual(len(subtitles), 0)
+        self.assertFalse(subtitles)
 
     def test_multiple_langs(self):
         self.DL.params['writesubtitles'] = True
@@ -246,7 +246,7 @@ class TestVimeoSubtitles(BaseTestSubtitles):
         self.DL.params['writesubtitles'] = True
         self.DL.params['allsubtitles'] = True
         subtitles = self.getSubtitles()
-        self.assertEqual(len(subtitles), 0)
+        self.assertFalse(subtitles)
 
     def test_multiple_langs(self):
         self.DL.params['writesubtitles'] = True
@@ -281,7 +281,7 @@ class TestWallaSubtitles(BaseTestSubtitles):
         self.DL.params['writesubtitles'] = True
         self.DL.params['allsubtitles'] = True
         subtitles = self.getSubtitles()
-        self.assertEqual(len(subtitles), 0)
+        self.assertFalse(subtitles)
 
 
 class TestCeskaTelevizeSubtitles(BaseTestSubtitles):
@@ -308,7 +308,7 @@ class TestCeskaTelevizeSubtitles(BaseTestSubtitles):
         self.DL.params['writesubtitles'] = True
         self.DL.params['allsubtitles'] = True
         subtitles = self.getSubtitles()
-        self.assertEqual(len(subtitles), 0)
+        self.assertFalse(subtitles)
 
 
 class TestLyndaSubtitles(BaseTestSubtitles):

+ 4 - 2
youtube_dl/YoutubeDL.py

@@ -1164,8 +1164,10 @@ class YoutubeDL(object):
                 if lang not in available_subs:
                     available_subs[lang] = cap_info
 
-        if not available_subs:
-            return available_subs
+        if (not self.params.get('writesubtitles') and not
+                self.params.get('writeautomaticsub') or not
+                available_subs):
+            return None
 
         if self.params.get('allsubtitles', False):
             requested_langs = available_subs.keys()