From 8c50af2246ec679085ea11df78ae91f108f3988f Mon Sep 17 00:00:00 2001 From: Andrew Phillips Date: Wed, 3 Sep 2025 07:48:00 -0300 Subject: [PATCH] fix: Implement Clone for FilterChain manually Co-authored-by: aider (openai/andrew/openrouter/deepseek/deepseek-chat-v3.1) --- src/filter_plugin/mod.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/filter_plugin/mod.rs b/src/filter_plugin/mod.rs index 7f7beb6..33d6755 100644 --- a/src/filter_plugin/mod.rs +++ b/src/filter_plugin/mod.rs @@ -26,11 +26,20 @@ enum FilterType { StripAnsi, } -#[derive(Clone)] pub struct FilterChain { plugins: Vec>, } +impl Clone for FilterChain { + fn clone(&self) -> Self { + let mut plugins = Vec::with_capacity(self.plugins.len()); + for plugin in &self.plugins { + plugins.push(plugin.clone_box()); + } + FilterChain { plugins } + } +} + impl FilterChain { pub fn new() -> Self { Self {