|
|
|
@ -3106,21 +3106,15 @@ def get_compatible_ext(*, vcodecs, acodecs, vexts, aexts, preferences=None):
|
|
|
|
|
def urlhandle_detect_ext(url_handle, default=NO_DEFAULT):
|
|
|
|
|
getheader = url_handle.headers.get
|
|
|
|
|
|
|
|
|
|
cd = getheader('Content-Disposition')
|
|
|
|
|
if cd:
|
|
|
|
|
m = re.match(r'attachment;\s*filename="(?P<filename>[^"]+)"', cd)
|
|
|
|
|
if m:
|
|
|
|
|
e = determine_ext(m.group('filename'), default_ext=None)
|
|
|
|
|
if e:
|
|
|
|
|
return e
|
|
|
|
|
|
|
|
|
|
meta_ext = getheader('x-amz-meta-name')
|
|
|
|
|
if meta_ext:
|
|
|
|
|
e = meta_ext.rpartition('.')[2]
|
|
|
|
|
if e:
|
|
|
|
|
return e
|
|
|
|
|
if cd := getheader('Content-Disposition'):
|
|
|
|
|
if m := re.match(r'attachment;\s*filename="(?P<filename>[^"]+)"', cd):
|
|
|
|
|
if ext := determine_ext(m.group('filename'), default_ext=None):
|
|
|
|
|
return ext
|
|
|
|
|
|
|
|
|
|
return mimetype2ext(getheader('Content-Type'), default=default)
|
|
|
|
|
return (
|
|
|
|
|
determine_ext(getheader('x-amz-meta-name'), default_ext=None)
|
|
|
|
|
or getheader('x-amz-meta-file-type')
|
|
|
|
|
or mimetype2ext(getheader('Content-Type'), default=default))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def encode_data_uri(data, mime_type):
|
|
|
|
|