Fixed bug #868338 (Relay.whois).

This commit is contained in:
Jeremy Fincher 2004-01-02 20:59:14 +00:00
parent a0d2a9da2a
commit 68591b1ec9
1 changed files with 13 additions and 10 deletions

View File

@ -95,10 +95,10 @@ def configure(onStart, afterConnect, advanced):
ircs = ircutils.IrcDict() ircs = ircutils.IrcDict()
lastmsg = {} # Not IrcDict. lastmsg = {} # Not IrcDict. Doesn't map strings.
channels = ircutils.IrcSet() channels = ircutils.IrcSet()
ircstates = {} # Not IrcDict. ircstates = {} # Not IrcDict. Doesn't map strings.
abbreviations = {} # Not IrcDict. abbreviations = {} # Not IrcDict. Doesn't map strings.
originalIrc = None originalIrc = None
def reload(x=None): def reload(x=None):
@ -414,10 +414,11 @@ class Relay(callbacks.Privmsg, configurable.Mixin):
def do318(self, irc, msg): def do318(self, irc, msg):
irc = self._getRealIrc(irc) irc = self._getRealIrc(irc)
nick = ircutils.toLower(msg.args[1]) nick = msg.args[1]
if (irc, nick) not in self._whois: loweredNick = ircutils.toLower(nick)
if (irc, loweredNick) not in self._whois:
return return
(replyIrc, replyMsg, d) = self._whois[(irc, nick)] (replyIrc, replyMsg, d) = self._whois[(irc, loweredNick)]
hostmask = '@'.join(d['311'].args[2:4]) hostmask = '@'.join(d['311'].args[2:4])
user = d['311'].args[-1] user = d['311'].args[-1]
if '319' in d: if '319' in d:
@ -475,14 +476,16 @@ class Relay(callbacks.Privmsg, configurable.Mixin):
'%s.%s' % (user, hostmask, identify, server, signon, idle, '%s.%s' % (user, hostmask, identify, server, signon, idle,
channels, away) channels, away)
replyIrc.reply(replyMsg, s) replyIrc.reply(replyMsg, s)
del self._whois[(irc, nick)] del self._whois[(irc, loweredNick)]
def do402(self, irc, msg): def do402(self, irc, msg):
irc = self._getRealIrc(irc) irc = self._getRealIrc(irc)
nick = ircutils.toLower(msg.args[1]) nick = msg.args[1]
if (irc, nick) not in self._whois: loweredNick = ircutils.toLower(nick)
if (irc, loweredNick) not in self._whois:
return return
(replyIrc, replyMsg, d) = self._whois[(irc, nick)] (replyIrc, replyMsg, d) = self._whois[(irc, loweredNick)]
del self._whois[(irc, loweredNick)]
s = 'There is no %s on %s.' % (nick, self.abbreviations[irc]) s = 'There is no %s on %s.' % (nick, self.abbreviations[irc])
replyIrc.reply(replyMsg, s) replyIrc.reply(replyMsg, s)