diff options
author | fnord <fnord@fnord.mobi> | 2015-07-15 15:13:56 -0500 |
---|---|---|
committer | fnord <fnord@fnord.mobi> | 2015-07-15 15:28:50 -0500 |
commit | e37c932fca29d93af77b7a47cccc9bb8578e3163 (patch) | |
tree | fbee18a2b4856e886f0d989cd70878eae5186cd1 /youtube_dl | |
parent | 5eb778bf4d52c2d1b53182e48c630a3458f2fb22 (diff) |
compat_urllib_parse_unquote: crash fix: only decode valid hex
on python 2 the following has a { "crash_rate": "100%" } of the time
as it tries to parse '" ' as hex.
Diffstat (limited to 'youtube_dl')
-rw-r--r-- | youtube_dl/compat.py | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/youtube_dl/compat.py b/youtube_dl/compat.py index c3783337a..1f4ccf443 100644 --- a/youtube_dl/compat.py +++ b/youtube_dl/compat.py @@ -94,6 +94,8 @@ except ImportError: try: if not item: raise ValueError + if not re.match('[0-9a-fA-F][0-9a-fA-F]',item[:2]): + raise ValueError pct_sequence += item[:2].decode('hex') rest = item[2:] if not rest: |