diff --git a/ChangeLog b/ChangeLog index 867cea907..ad353ab41 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ + * Fixed bug in which the bot wouldn't rejoin channels after a + reconnect. Thank the Lord for tcpkill :) + * Fixed Http.freshmeat for projects with a space in their names. * Added Karma.most for determining various "mosts" in the Karma diff --git a/src/irclib.py b/src/irclib.py index 0fb749de3..3237562cc 100644 --- a/src/irclib.py +++ b/src/irclib.py @@ -405,7 +405,8 @@ class Irc(IrcCommandDispatcher): '333', '353', '332', '366', '005']) def __init__(self, nick, user='', ident='', password='', callbacks=None): world.ircs.append(self) - self.nick = intern(nick) + self.originalNick = intern(nick) + self.nick = self.originalNick self.password = password self.user = intern(user or nick) # Default to nick self.ident = intern(ident or nick) # Ditto. @@ -430,6 +431,8 @@ class Irc(IrcCommandDispatcher): def reset(self): """Resets the Irc object. Useful for handling reconnects.""" + self.nick = self.originalNick + self.prefix = '%s!%s@%s' % (self.nick, self.ident, 'unset.domain') self.state.reset() self.queue.reset() self.server = None