From c14ca1d7fd695732497408c42a2e35de725c96e6 Mon Sep 17 00:00:00 2001 From: Aiden McClelland <3732071+dr-bonez@users.noreply.github.com> Date: Wed, 1 Nov 2023 13:23:14 -0600 Subject: [PATCH] use existing dependency icon if available (#2489) --- backend/src/install/mod.rs | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/backend/src/install/mod.rs b/backend/src/install/mod.rs index 20f57764f..b46be0c4c 100644 --- a/backend/src/install/mod.rs +++ b/backend/src/install/mod.rs @@ -838,15 +838,15 @@ pub async fn install_s9pk( None }; - let icon_path = if let Some(marketplace_url) = &marketplace_url { - if let Some(manifest) = &manifest { - let dir = ctx - .datadir - .join(PKG_PUBLIC_DIR) - .join(&manifest.id) - .join(manifest.version.as_str()); - let icon_path = dir.join(format!("icon.{}", manifest.assets.icon_type())); - if tokio::fs::metadata(&icon_path).await.is_err() { + let icon_path = if let Some(manifest) = &manifest { + let dir = ctx + .datadir + .join(PKG_PUBLIC_DIR) + .join(&manifest.id) + .join(manifest.version.as_str()); + let icon_path = dir.join(format!("icon.{}", manifest.assets.icon_type())); + if tokio::fs::metadata(&icon_path).await.is_err() { + if let Some(marketplace_url) = &marketplace_url { tokio::fs::create_dir_all(&dir).await?; let icon = ctx .client @@ -864,10 +864,12 @@ pub async fn install_s9pk( let mut dst = File::create(&icon_path).await?; tokio::io::copy(&mut response_to_reader(icon), &mut dst).await?; dst.sync_all().await?; + Some(icon_path) + } else { + None } - Some(icon_path) } else { - None + Some(icon_path) } } else { None