From d053a660b091630a46ff9f103e26c85f412fa186 Mon Sep 17 00:00:00 2001 From: James McCoy Date: Mon, 30 Jul 2012 23:21:26 -0400 Subject: [PATCH] callbacks.py: Always error when capabilities aren't satisfied. Signed-off-by: James McCoy --- src/callbacks.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/callbacks.py b/src/callbacks.py index eaf43cce7..bde93dc5f 100644 --- a/src/callbacks.py +++ b/src/callbacks.py @@ -465,13 +465,15 @@ class RichReplyMethods(object): if isinstance(capability, basestring): # checkCommandCapability! log.warning('Denying %s for lacking %q capability.', self.msg.prefix, capability) - if not self._getConfig(conf.supybot.reply.error.noCapability): - v = self._getConfig(conf.supybot.replies.noCapability) - s = self.__makeReply(v % capability, s) - return self._error(s, **kwargs) + # noCapability means "don't send a specific capability error + # message" not "don't send a capability error message at all", like + # one would think + if self._getConfig(conf.supybot.reply.error.noCapability): + v = self._getConfig(conf.supybot.replies.genericNoCapability) else: - log.debug('Not sending capability error, ' - 'supybot.reply.error.noCapability is False.') + v = self._getConfig(conf.supybot.replies.noCapability) + s = self.__makeReply(v % capability, s) + return self._error(s, **kwargs) else: log.warning('Denying %s for some unspecified capability ' '(or a default).', self.msg.prefix)