From: Sergey M․ Date: Sat, 7 Mar 2015 19:13:23 +0000 (+0600) Subject: [YoutubeDL] Sanitize outtmpl as it may contain forbidden characters X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=commitdiff_plain;ds=sidebyside;h=7dcad95d4faa91adfaa4d87d411c4bc55ab000e4;p=youtube-dl [YoutubeDL] Sanitize outtmpl as it may contain forbidden characters --- diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py index df2aebb59..bae52e9c7 100755 --- a/youtube_dl/YoutubeDL.py +++ b/youtube_dl/YoutubeDL.py @@ -553,16 +553,20 @@ class YoutubeDL(object): elif template_dict.get('width'): template_dict['resolution'] = '?x%d' % template_dict['width'] + restrict_filenames = self.params.get('restrictfilenames') + sanitize = lambda k, v: sanitize_filename( compat_str(v), - restricted=self.params.get('restrictfilenames'), + restricted=restrict_filenames, is_id=(k == 'id')) template_dict = dict((k, sanitize(k, v)) for k, v in template_dict.items() if v is not None) template_dict = collections.defaultdict(lambda: 'NA', template_dict) - outtmpl = self.params.get('outtmpl', DEFAULT_OUTTMPL) + outtmpl = sanitize_filename( + self.params.get('outtmpl', DEFAULT_OUTTMPL), + restricted=restrict_filenames) tmpl = compat_expanduser(outtmpl) filename = tmpl % template_dict # Temporary fix for #4787