]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/commitdiff
New Auth Framework: catch possible error when trying to create transient botuser
authorGiuseppe Bilotta <giuseppe.bilotta@gmail.com>
Sat, 15 Sep 2007 22:25:22 +0000 (22:25 +0000)
committerGiuseppe Bilotta <giuseppe.bilotta@gmail.com>
Sat, 15 Sep 2007 22:25:22 +0000 (22:25 +0000)
lib/rbot/botuser.rb

index 7a00f27737e8f77596f597ec5746869454fb062a..83fb26240333a0456a743fe662b3c61f26ebce01 100644 (file)
@@ -757,13 +757,21 @@ class Bot
       end\r
 \r
       # Creates a new transient BotUser associated with Irc::User _user_,\r
-      # automatically logging him in\r
+      # automatically logging him in. Note that transient botuser creation can\r
+      # fail, typically if we don't have the complete user netmask (e.g. for\r
+      # messages coming in from a linkbot)\r
       #\r
       def create_transient_botuser(user)\r
         ircuser = user.to_irc_user\r
-        bu = BotUser.new(ircuser, :transient => true, :masks => ircuser)\r
-        bu.login(ircuser)\r
-        @transients << bu\r
+        bu = everyone\r
+        begin\r
+          bu = BotUser.new(ircuser, :transient => true, :masks => ircuser)\r
+          bu.login(ircuser)\r
+          @transients << bu\r
+        rescue\r
+          warning "failed to create transient for #{user}"\r
+          error $!\r
+        end\r
         return bu\r
       end\r
 \r