diff --git a/src/Misc.py b/src/Misc.py index 0127d6d23..8a7fbd6cc 100755 --- a/src/Misc.py +++ b/src/Misc.py @@ -63,7 +63,14 @@ def replyWhenNotCommand(irc, msg, notCommands): s = '%s are not commands' % \ utils.commaAndify(notCommands) irc.reply(msg, s) - + +def reload(x=None): + """Called when this plugin is reloaded.""" + global replyWhenNotCommand + if x is None: + return replyWhenNotCommand + else: + replyWhenNotCommand = x class Misc(callbacks.Privmsg): def doPrivmsg(self, irc, msg): diff --git a/src/Owner.py b/src/Owner.py index 09cd73ebd..020e5c434 100644 --- a/src/Owner.py +++ b/src/Owner.py @@ -321,8 +321,13 @@ class Owner(privmsgs.CapabilityCheckingPrivmsg): name = privmsgs.getArgs(args) callbacks = irc.removeCallback(name) if callbacks: + module = sys.modules[callbacks[0].__module__] + if hasattr(module, 'reload'): + x = module.reload() try: module = loadPluginModule(name) + if hasattr(module, 'reload'): + module.reload(x) for callback in callbacks: callback.die() del callback