diff --git a/yazi-shared/src/url/traits.rs b/yazi-shared/src/url/traits.rs index 52cd6b52..c2030f9a 100644 --- a/yazi-shared/src/url/traits.rs +++ b/yazi-shared/src/url/traits.rs @@ -62,11 +62,17 @@ impl AsUrl for &UrlCow<'_> { fn as_url(&self) -> Url<'_> { (**self).as_url() } } -impl<'a, T: AsUrl> From<&'a T> for Url<'a> { +impl<'a, T> From<&'a T> for Url<'a> +where + T: AsUrl + ?Sized, +{ fn from(value: &'a T) -> Self { value.as_url() } } -impl<'a, T: AsUrl> From<&'a mut T> for Url<'a> { +impl<'a, T> From<&'a mut T> for Url<'a> +where + T: AsUrl + ?Sized, +{ fn from(value: &'a mut T) -> Self { value.as_url() } } diff --git a/yazi-watcher/src/local/linked.rs b/yazi-watcher/src/local/linked.rs index 9a3f6a66..e8c9afb5 100644 --- a/yazi-watcher/src/local/linked.rs +++ b/yazi-watcher/src/local/linked.rs @@ -40,7 +40,7 @@ impl Linked { pub fn from_file(&self, url: Url) -> Vec { let Some(path) = url.as_path() else { return vec![] }; if let Some((parent, name)) = path.parent().zip(path.file_name()) { - self.from_dir(&parent).map(|p| p.join(name)).collect() + self.from_dir(parent).map(|p| p.join(name)).collect() } else { vec![] }