Explorar el Código

[utils] Always decode Location header

escape_url is broken for bytes-like objects
Yen Chi Hsuan hace 9 años
padre
commit
0ea590076f
Se han modificado 1 ficheros con 2 adiciones y 0 borrados
  1. 2 0
      youtube_dl/utils.py

+ 2 - 0
youtube_dl/utils.py

@@ -861,6 +861,8 @@ class YoutubeDLHandler(compat_urllib_request.HTTPHandler):
                 # As of RFC 2616 default charset is iso-8859-1 that is respected by python 3
                 if sys.version_info >= (3, 0):
                     location = location.encode('iso-8859-1').decode('utf-8')
+                else:
+                    location = location.decode('utf-8')
                 location_escaped = escape_url(location)
                 if location != location_escaped:
                     del resp.headers['Location']