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 | |
| 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.
| -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: | 
