diff --git a/app/MindWork AI Studio/Components/MSGComponentBase.cs b/app/MindWork AI Studio/Components/MSGComponentBase.cs
index 3e1462a1..d2ff9d84 100644
--- a/app/MindWork AI Studio/Components/MSGComponentBase.cs
+++ b/app/MindWork AI Studio/Components/MSGComponentBase.cs
@@ -100,7 +100,7 @@ public abstract class MSGComponentBase : ComponentBase, IDisposable, IMessageBus
Event.PLUGINS_RELOADED,
};
- this.MessageBus.ApplyFilters(this, filterComponents, eventsList.ToArray());
+ this.MessageBus.ApplyFilters(this, filterComponents, eventsList.ToHashSet());
}
protected virtual void DisposeResources()
diff --git a/app/MindWork AI Studio/Tools/MessageBus.cs b/app/MindWork AI Studio/Tools/MessageBus.cs
index 6f27da87..f7feb24a 100644
--- a/app/MindWork AI Studio/Tools/MessageBus.cs
+++ b/app/MindWork AI Studio/Tools/MessageBus.cs
@@ -33,10 +33,10 @@ public sealed class MessageBus
/// That's you, the receiver.
/// A list of components for which you want to receive messages. Use an empty list to receive messages from all components.
/// A list of events for which you want to receive messages.
- public void ApplyFilters(IMessageBusReceiver receiver, ComponentBase[] filterComponents, Event[] events)
+ public void ApplyFilters(IMessageBusReceiver receiver, ComponentBase[] filterComponents, HashSet events)
{
this.componentFilters[receiver] = filterComponents;
- this.componentEvents[receiver] = events;
+ this.componentEvents[receiver] = events.ToArray();
}
public void RegisterComponent(IMessageBusReceiver receiver)
diff --git a/app/MindWork AI Studio/Tools/MessageBusExtensions.cs b/app/MindWork AI Studio/Tools/MessageBusExtensions.cs
index 7956c27e..36d8b71e 100644
--- a/app/MindWork AI Studio/Tools/MessageBusExtensions.cs
+++ b/app/MindWork AI Studio/Tools/MessageBusExtensions.cs
@@ -11,6 +11,6 @@ public static class MessageBusExtensions
public static void ApplyFilters(this IMessageBusReceiver component, ComponentBase[] components, Event[] events)
{
- MessageBus.INSTANCE.ApplyFilters(component, components, events);
+ MessageBus.INSTANCE.ApplyFilters(component, components, events.ToHashSet());
}
}
\ No newline at end of file