diff options
author | Kcchouette <Kcchouette@users.noreply.github.com> | 2021-01-02 00:56:53 +0100 |
---|---|---|
committer | Saptak S <saptak013@gmail.com> | 2021-01-31 16:37:45 +0530 |
commit | 89043b854590f9517678f51b308a8dff345271f1 (patch) | |
tree | 6aeadad17dd6ad05ca45ef7677669a09e2e76586 | |
parent | c5308efc579dfbe7ee5d2de539d698b2fe07b668 (diff) | |
download | onionshare-89043b854590f9517678f51b308a8dff345271f1.tar.gz onionshare-89043b854590f9517678f51b308a8dff345271f1.zip |
use utf8 name too for file downloading
-rw-r--r-- | cli/onionshare_cli/web/send_base_mode.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/cli/onionshare_cli/web/send_base_mode.py b/cli/onionshare_cli/web/send_base_mode.py index 5f3bbfa1..ad4459fe 100644 --- a/cli/onionshare_cli/web/send_base_mode.py +++ b/cli/onionshare_cli/web/send_base_mode.py @@ -25,6 +25,7 @@ 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: @@ -263,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=unidecode(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: |