fix: clone moved values to resolve ownership issues

This commit is contained in:
Andrew Phillips (aider)
2025-05-14 16:32:04 -03:00
parent 477a03fbb7
commit ac4660684d
2 changed files with 5 additions and 4 deletions

View File

@@ -169,7 +169,7 @@ pub fn mode_save(
// Finalize the digest and log the result // Finalize the digest and log the result
let digest = digest_engine.finalize()?; let digest = digest_engine.finalize()?;
debug!("DIGEST: {}", digest); debug!("DIGEST: {}", digest);
item.digest_value = Some(digest); item.digest_value = Some(digest.clone());
db::update_item(conn, item.clone())?; db::update_item(conn, item.clone())?;

View File

@@ -67,7 +67,7 @@ pub fn mode_update(
} }
if item.digest_value.is_none() { if item.digest_value.is_none() {
let digest_type = digest_engine::DigestType::from_str(&item.digest_type)?; let digest_type = digest_engine::DigestType::from_str(&item.digest_type.clone())?;
if digest_type != digest_engine::DigestType::None { if digest_type != digest_engine::DigestType::None {
info!("Updating unknown digest value"); info!("Updating unknown digest value");
@@ -79,7 +79,7 @@ pub fn mode_update(
debug!("MAIN: Updating stream size of {:?}", item_path); debug!("MAIN: Updating stream size of {:?}", item_path);
// Create and initialize digest engine // Create and initialize digest engine
let mut digest_engine = digest_engine::get_digest_engine(digest_type); let mut digest_engine = digest_engine::get_digest_engine(digest_type.clone());
// Read file content and update digest // Read file content and update digest
let mut reader = compression_engine.open(item_path)?; let mut reader = compression_engine.open(item_path)?;
@@ -94,9 +94,10 @@ pub fn mode_update(
// Get final digest value // Get final digest value
let digest_value = digest_engine.finalize()?; let digest_value = digest_engine.finalize()?;
debug!("DIGEST: {}", digest_value);
// Update item with new digest value // Update item with new digest value
item.digest_value = Some(digest_value); item.digest_value = Some(digest_value.clone());
db::update_item(conn, item.clone())?; db::update_item(conn, item.clone())?;
// Save digest to meta // Save digest to meta