diff --git a/deluge/ui/web/json_api.py b/deluge/ui/web/json_api.py index e369582d1..e3d3b1a33 100644 --- a/deluge/ui/web/json_api.py +++ b/deluge/ui/web/json_api.py @@ -379,6 +379,9 @@ class WebApi(JSONComponent): self.sessionproxy = SessionProxy() def disable(self): + client.deregister_event_handler("PluginEnabledEvent", self._json.get_remote_methods) + client.deregister_event_handler("PluginDisabledEvent", self._json.get_remote_methods) + if client.is_classicmode(): component.get("Web.PluginManager").stop() else: diff --git a/deluge/ui/web/pluginmanager.py b/deluge/ui/web/pluginmanager.py index 751407618..f5485cfea 100644 --- a/deluge/ui/web/pluginmanager.py +++ b/deluge/ui/web/pluginmanager.py @@ -109,6 +109,8 @@ class PluginManager(PluginManagerBase, component.Component): Stop the plugin manager """ self.disable_plugins() + client.deregister_event_handler("PluginEnabledEvent", self._on_plugin_enabled_event) + client.deregister_event_handler("PluginDisabledEvent", self._on_plugin_disabled_event) def update(self): pass