diff options
author | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-03-11 14:28:27 +0530 |
---|---|---|
committer | pukkandan <pukkandan.ytdlp@gmail.com> | 2022-03-11 19:29:43 +0530 |
commit | 2b38f7b2bcb327b376c896211cd727690dbe5aa1 (patch) | |
tree | 6edb776f545e121cf1468335e60dc8f587fd1f98 | |
parent | 76aa99137475698941a86edd010d67ff4caa88a2 (diff) | |
download | hypervideo-pre-2b38f7b2bcb327b376c896211cd727690dbe5aa1.tar.lz hypervideo-pre-2b38f7b2bcb327b376c896211cd727690dbe5aa1.tar.xz hypervideo-pre-2b38f7b2bcb327b376c896211cd727690dbe5aa1.zip |
[MetadataParser] Validate outtmpl early
-rw-r--r-- | yt_dlp/postprocessor/metadataparser.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/yt_dlp/postprocessor/metadataparser.py b/yt_dlp/postprocessor/metadataparser.py index 5452b92d8..5bc435da3 100644 --- a/yt_dlp/postprocessor/metadataparser.py +++ b/yt_dlp/postprocessor/metadataparser.py @@ -1,5 +1,4 @@ import re - from enum import Enum from .common import PostProcessor @@ -26,12 +25,17 @@ class MetadataParserPP(PostProcessor): ''' if not isinstance(action, cls.Actions): raise ValueError(f'{action!r} is not a valid action') - getattr(cls, action.value)(cls, *data) + getattr(cls, action.value)(cls, *data) # So this can raise error to validate @staticmethod def field_to_template(tmpl): if re.match(r'[a-zA-Z_]+$', tmpl): return f'%({tmpl})s' + + from ..YoutubeDL import YoutubeDL + err = YoutubeDL.validate_outtmpl(tmpl) + if err: + raise err return tmpl @staticmethod |