diff options
Diffstat (limited to 'server/src/routes/ui/assets.rs')
-rw-r--r-- | server/src/routes/ui/assets.rs | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/server/src/routes/ui/assets.rs b/server/src/routes/ui/assets.rs index 27d322a..e9c7d24 100644 --- a/server/src/routes/ui/assets.rs +++ b/server/src/routes/ui/assets.rs @@ -28,13 +28,15 @@ pub async fn r_item_assets( db: &State<Database>, ) -> Result<(ContentType, CacheControlFile), MyError> { let node = db.node.get(&id)?.ok_or(anyhow!("node does not exist"))?; - let path = CONF.library_path.join( - match role { - AssetRole::Backdrop => node.private.backdrop, - AssetRole::Poster => node.private.poster, - } - .unwrap_or_else(|| PathBuf::from_str("fallback.jpeg").unwrap()), - ); + let path = match role { + AssetRole::Backdrop => node.private.backdrop, + AssetRole::Poster => node.private.poster, + } + .map(|e| CONF.library_path.join(e)) + .unwrap_or_else(|| { + CONF.asset_path + .join(PathBuf::from_str("fallback.jpeg").unwrap()) + }); info!("loading asset from {path:?}"); let ext = path.extension().unwrap().to_str().unwrap(); Ok(( |