]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/blobdiff - lib/rbot/registry.rb
test
[user/henk/code/ruby/rbot.git] / lib / rbot / registry.rb
index cd78dcbf8537199aa2b6837a4a8d9658af27a273..2a7edbb6fc07bff163799936760cb9a423687fb4 100644 (file)
@@ -1,24 +1,3 @@
-# Copyright (C) 2002 Tom Gilbert.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies of the Software and its documentation and acknowledgment shall be
-# given in the documentation and software packages that this Software was
-# used.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
-# THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
-# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-  
 require 'rbot/dbhash'
 
 module Irc
@@ -141,7 +120,20 @@ module Irc
     #     val
     #   end
     def restore(val)
-      Marshal.restore(val)
+      begin
+        Marshal.restore(val)
+      rescue
+        $stderr.puts "failed to restore marshal data, falling back to default"
+        if @default != nil
+          begin
+            return Marshal.restore(@default)
+          rescue
+            return nil
+          end
+        else
+          return nil
+        end
+      end
     end
 
     # lookup a key in the registry