diff --git a/force_bdss/core_mco_driver.py b/force_bdss/core_mco_driver.py
index a23543704884d3fcab755cd95d31a4c82338c880..e2678daee1837df4cf8595ee4618008a988c47d3 100644
--- a/force_bdss/core_mco_driver.py
+++ b/force_bdss/core_mco_driver.py
@@ -37,6 +37,7 @@ class CoreMCODriver(BaseCoreDriver):
     def application_stopping(self):
         for listener in self.listeners:
             self._finalize_listener(listener)
+        self.listeners[:] = []
 
     def _mco_default(self):
         try:
@@ -51,7 +52,7 @@ class CoreMCODriver(BaseCoreDriver):
 
     @on_trait_change("mco:event")
     def _handle_mco_event(self, event):
-        for listener in self.listeners:
+        for listener in self.listeners[:]:
             try:
                 listener.deliver(event)
             except Exception as e: