summaryrefslogtreecommitdiff
path: root/cli/onionshare_cli/web/send_base_mode.py
diff options
context:
space:
mode:
Diffstat (limited to 'cli/onionshare_cli/web/send_base_mode.py')
-rw-r--r--cli/onionshare_cli/web/send_base_mode.py8
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: