diff options
Diffstat (limited to 'src/listing.rs')
-rw-r--r-- | src/listing.rs | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/listing.rs b/src/listing.rs index 9273025..9e02598 100644 --- a/src/listing.rs +++ b/src/listing.rs @@ -1,7 +1,6 @@ -use actix_web::body::Body; use actix_web::dev::ServiceResponse; use actix_web::web::Query; -use actix_web::{HttpRequest, HttpResponse}; +use actix_web::{HttpMessage, HttpRequest, HttpResponse}; use bytesize::ByteSize; use percent_encoding::{percent_decode_str, utf8_percent_encode}; use qrcodegen::{QrCode, QrCodeEcc}; @@ -15,7 +14,8 @@ use crate::archive::ArchiveMethod; use crate::auth::CurrentUser; use crate::errors::{self, ContextualError}; use crate::renderer; -use percent_encode_sets::PATH_SEGMENT; + +use self::percent_encode_sets::PATH_SEGMENT; /// "percent-encode sets" as defined by WHATWG specs: /// https://url.spec.whatwg.org/#percent-encoded-bytes @@ -157,7 +157,6 @@ pub fn directory_listing( let extensions = req.extensions(); let current_user: Option<&CurrentUser> = extensions.get::<CurrentUser>(); - use actix_web::dev::BodyEncoding; let conf = req.app_data::<crate::MiniserveConfig>().unwrap(); let serve_path = req.path(); @@ -225,7 +224,7 @@ pub fn directory_listing( .body(qr_to_svg_string(&qr, 2)), Err(err) => { log::error!("URL is invalid (too long?): {:?}", err); - HttpResponse::UriTooLong().body(Body::Empty) + HttpResponse::UriTooLong().finish() } }; return Ok(ServiceResponse::new(req.clone(), res)); @@ -358,7 +357,7 @@ pub fn directory_listing( req.clone(), HttpResponse::Ok() .content_type(archive_method.content_type()) - .encoding(archive_method.content_encoding()) + .append_header(archive_method.content_encoding()) .append_header(("Content-Transfer-Encoding", "binary")) .append_header(( "Content-Disposition", |