diff --git a/src/modes/save.rs b/src/modes/save.rs index a7135b6..9beb0bd 100644 --- a/src/modes/save.rs +++ b/src/modes/save.rs @@ -42,6 +42,18 @@ fn setup_compression_and_plugins( .map(|meta_plugin_type| crate::meta_plugin::get_meta_plugin(meta_plugin_type.clone())) .collect(); + // Configure meta plugins with their options from settings + if let Some(meta_plugin_configs) = &settings.meta_plugins { + for meta_plugin in meta_plugins.iter_mut() { + let plugin_name = meta_plugin.meta_name(); + if let Some(config) = meta_plugin_configs.iter().find(|c| c.name == plugin_name) { + if let Err(e) = meta_plugin.configure(&config.options) { + eprintln!("Warning: Failed to configure meta plugin '{}': {}", plugin_name, e); + } + } + } + } + // Check for unsupported meta plugins, warn the user, and remove them from the list let mut i = 0; meta_plugins.retain(|meta_plugin| {