From 706268259f5d0cc1e9439f61e248cdf788c203a7 Mon Sep 17 00:00:00 2001 From: Hung-I Wang Date: Fri, 1 Nov 2019 21:17:48 +0800 Subject: [PATCH] Fix filename encoding in Content-Disposition of acitx_files::NamedFile --- actix-files/src/named.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/actix-files/src/named.rs b/actix-files/src/named.rs index ca1a909a4..d7c3fa889 100644 --- a/actix-files/src/named.rs +++ b/actix-files/src/named.rs @@ -13,7 +13,7 @@ use mime_guess::from_path; use actix_http::body::SizedStream; use actix_web::http::header::{ - self, ContentDisposition, DispositionParam, DispositionType, + self, Charset, ContentDisposition, DispositionParam, DispositionType, ExtendedValue, }; use actix_web::http::{ContentEncoding, StatusCode}; use actix_web::middleware::BodyEncoding; @@ -95,7 +95,13 @@ impl NamedFile { }; let cd = ContentDisposition { disposition: disposition_type, - parameters: vec![DispositionParam::Filename(filename.into_owned())], + parameters: vec![ + DispositionParam::FilenameExt(ExtendedValue { + charset: Charset::Ext(String::from("UTF-8")), + language_tag: None, + value: filename.as_bytes().to_vec(), + }), + ], }; (ct, cd) };