From eb2e5825bceec1171f0e154cb72f5870576a94f2 Mon Sep 17 00:00:00 2001 From: mathieui Date: Sun, 10 Mar 2013 23:58:20 +0100 Subject: Disable plugins on exit --- src/core.py | 1 + src/plugin_manager.py | 7 +++++++ 2 files changed, 8 insertions(+) (limited to 'src') diff --git a/src/core.py b/src/core.py index 8dd1b739..a37788e7 100644 --- a/src/core.py +++ b/src/core.py @@ -2230,6 +2230,7 @@ class Core(object): msg = arg else: msg = None + self.plugin_manager.disable_plugins() self.disconnect(msg) self.running = False self.reset_curses() diff --git a/src/plugin_manager.py b/src/plugin_manager.py index afd04330..693a90c6 100644 --- a/src/plugin_manager.py +++ b/src/plugin_manager.py @@ -67,6 +67,13 @@ class PluginManager(object): self.roster_elements = {} self.plugin_api = PluginAPI(core, self) + def disable_plugins(self): + for plugin in set(self.plugins.keys()): + try: + self.unload(plugin) + except: + pass + def load(self, name, notify=True): """ Load a plugin. -- cgit v1.2.3