address review comment
[youtube-dl] / youtube_dl / extractor / youtube.py
index 248105d7f21af0a8eb34261ee4ea54591f81c439..e573b021d99a567d64935931c3352b6c72785131 100644 (file)
@@ -777,10 +777,12 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
             if m_s is not None:
                 self.to_screen(u'%s: Encrypted signatures detected.' % video_id)
                 video_info['url_encoded_fmt_stream_map'] = [args['url_encoded_fmt_stream_map']]
-            m_s = re.search(r'[&,]s=', args['adaptive_fmts'])
+            m_s = re.search(r'[&,]s=', args.get('adaptive_fmts', u''))
+            if 'url_encoded_fmt_stream_map' not in video_info or not video_info['url_encoded_fmt_stream_map']:
+                video_info['url_encoded_fmt_stream_map'] = ['']
             if m_s is not None:
                 video_info['url_encoded_fmt_stream_map'][0] += ','+args['adaptive_fmts']
-            else:
+            elif 'adaptive_fmts' in video_info:
                 video_info['url_encoded_fmt_stream_map'][0] += ','+video_info['adaptive_fmts'][0]
 
         except ValueError: