diff options
Diffstat (limited to 'cli/onionshare_cli/web/send_base_mode.py')
-rw-r--r-- | cli/onionshare_cli/web/send_base_mode.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/cli/onionshare_cli/web/send_base_mode.py b/cli/onionshare_cli/web/send_base_mode.py index 9913996e..ad4459fe 100644 --- a/cli/onionshare_cli/web/send_base_mode.py +++ b/cli/onionshare_cli/web/send_base_mode.py @@ -24,6 +24,8 @@ import tempfile import mimetypes import gzip from flask import Response, request, render_template, make_response +from unidecode import unidecode +from werkzeug.urls import url_quote class SendBaseModeWeb: @@ -262,7 +264,11 @@ class SendBaseModeWeb: if use_gzip: r.headers.set("Content-Encoding", "gzip") r.headers.set("Content-Length", filesize) - r.headers.set("Content-Disposition", "inline", filename=basename) + filename_dict = { + 'filename': unidecode(basename), + 'filename*': "UTF-8''%s" % url_quote(basename) + } + r.headers.set("Content-Disposition", "inline", **filename_dict) r = self.web.add_security_headers(r) (content_type, _) = mimetypes.guess_type(basename, strict=False) if content_type is not None: |