diff options
author | Giuseppe Bilotta <giuseppe.bilotta@gmail.com> | 2008-07-14 00:57:43 +0200 |
---|---|---|
committer | Giuseppe Bilotta <giuseppe.bilotta@gmail.com> | 2008-07-14 00:57:43 +0200 |
commit | 9a1cf6a11b12c06cd925dd6a789ec98fe750c8ad (patch) | |
tree | c200c84b4ba8cede211b8b646130cf8edf4e20c6 | |
parent | c9bd2bc721a22827710d1a2060ac0c0492cf0b67 (diff) |
* use to_irc_netmask(:force => true) to unlink Netmasks from their Server to prevent errors when dumping users
-rw-r--r-- | lib/rbot/botuser.rb | 2 | ||||
-rw-r--r-- | lib/rbot/irc.rb | 3 |
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/rbot/botuser.rb b/lib/rbot/botuser.rb index a4bec708..8fa04fc5 100644 --- a/lib/rbot/botuser.rb +++ b/lib/rbot/botuser.rb @@ -461,7 +461,7 @@ class Bot # Adds a Netmask # def add_netmask(mask) - m = mask.to_irc_netmask + m = mask.to_irc_netmask(:server => nil,:force => true) @netmasks << m if self.autologin? Auth.manager.maskdb.add(self, m) diff --git a/lib/rbot/irc.rb b/lib/rbot/irc.rb index 72579b19..0be26a00 100644 --- a/lib/rbot/irc.rb +++ b/lib/rbot/irc.rb @@ -214,6 +214,7 @@ module Irc h = {} h[:server] = @server if defined?(@server) and @server h[:casemap] = @casemap if defined?(@casemap) and @casemap + h[:casemap] ||= @server.casemap if defined?(@server) and @server return h end @@ -682,7 +683,7 @@ module Irc # Subclasses of Netmask will return a new Netmask, using full_downcase # def to_irc_netmask(opts={}) - if self.class == Netmask + if self.class == Netmask and not opts[:force] return self if fits_with_server_and_casemap?(opts) end return self.full_downcase.to_irc_netmask(server_and_casemap.merge(opts)) |