diff --git a/src/modes/update.rs b/src/modes/update.rs index 427a50b..7313be0 100644 --- a/src/modes/update.rs +++ b/src/modes/update.rs @@ -84,6 +84,7 @@ pub fn mode_update( // Create and initialize digest engine let mut digest_engine = meta_plugin::get_meta_plugin(digest_type.clone()); + digest_engine.initialize(&tx, item_id)?; // Read file content and update digest let mut reader = compression_engine.open(item_path)?; @@ -96,18 +97,8 @@ pub fn mode_update( digest_engine.update(&buffer[..bytes_read]); } - // Get final digest value - let digest_value = digest_engine.finalize()?; - debug!("DIGEST: {}", digest_value); - - // Save digest to meta - let digest_meta_name = get_digest_type_meta(digest_type); - let digest_meta = db::Meta { - id: item_id, - name: digest_meta_name, - value: digest_value, - }; - db::store_meta(&tx, digest_meta)?; + // Finalize the digest engine (this will save the metadata) + digest_engine.finalize()?; } else { debug!( "MAIN: Unable to update digest of item due to missing file {:?}",