diff --git a/src/providers/pmvhaven.rs b/src/providers/pmvhaven.rs index d387773..8c20f59 100644 --- a/src/providers/pmvhaven.rs +++ b/src/providers/pmvhaven.rs @@ -7,7 +7,7 @@ use crate::util::time::parse_time_to_seconds; use crate::videos::{ServerOptions, VideoItem}; use async_trait::async_trait; use error_chain::error_chain; -use htmlentity::entity::{ICodedDataTrait, decode}; +use htmlentity::entity::{ICodedDataTrait, decode, encode, CharacterSet, EncodeType}; use std::sync::{Arc, RwLock}; use std::{vec}; @@ -229,7 +229,11 @@ impl PmvhavenProvider { let video_item = VideoItem::new( id, title, - video_url.replace(" ", "%20").to_string(), + encode( + video_url.as_bytes(), + &EncodeType::NamedOrHex, + &CharacterSet::HtmlAndNonASCII + ).to_string().unwrap_or(video_url.clone()), "pmvhaven".to_string(), thumb, duration as u32,