[mod] don't try to proxify data URL.

Previously only image/jpeg was not proxied.
This commit don't proxify all MIME types starting with "image/".

This is a quick fix for the PR #1985 : the google_image engine can returns some data URL.
This commit is contained in:
Dalf 2020-06-22 13:57:33 +02:00
parent c83007a6bc
commit 4c7b787004

View File

@ -335,8 +335,15 @@ def image_proxify(url):
if not request.preferences.get_value('image_proxy'):
return url
if url.startswith('data:image/jpeg;base64,'):
return url
if url.startswith('data:image/'):
# 50 is an arbitrary number to get only the beginning of the image.
partial_base64 = url[len('data:image/'):50].split(';')
if len(partial_base64) == 2 \
and partial_base64[0] in ['gif', 'png', 'jpeg', 'pjpeg', 'webp', 'tiff', 'bmp']\
and partial_base64[1].startswith('base64,'):
return url
else:
return None
if settings.get('result_proxy'):
return proxify(url)